学习docker记录2023-10-12
文章目录1、配置yum源,安装docker1.1配置yum源头1.2环境1.3前期配置1.4yum安装1.5安装后配置2、配置本地容器镜像仓库参考3、docker命令3.1search(搜索镜像),pull(拉去镜像),rmi(删除镜像),load(解压离线镜像包),save(生成离线镜像)3.2run(启动容器),ps(查看容器),stop(停止),start(启动),exec(进入容器),rm(删除容器)3.3、cp,logs3.4、设置cpu内存和swap4、docker 部署 项目4.1、通过docker部署nginx服务学习docker记录2023-10-121、配置yum源,安装docker1.1配置yum源头其实安装docker只需要 CentOS-Base.repo(阿里云,或者其他国内源),docker-ce.repoyuminstall-yhttps://download.docker.com/linux/centos/8/x86_64/stable/Packages/containerd.io-1.4.3-3.1.el8.x86_64.rpm yuminstall-yyum-utils device-mapper-persistent-data lvm2#官方源yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo#阿里源wgethttps://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo1.2环境学习docker记录docker私有仓库 192.168.29.134docker客户端 192.168.29.133使用docker版本:docker-ce-20.10.17系统版本centos7.9两台虚拟机都要执行1.3前期配置(1)关闭防火墙和selinuxsystemctl stop firewalldsystemctl disable firewalldsed-i's/SELINUX=enforcing/SELINUX=disabled/g'/etc/selinux/config setenforce0(2)设置时间同步,用chrony也行yuminstall-yntp ntpdate ntpdate cn.pool.ntp.orgcrontab-e* */1 * * * /usr/sbin/ntpdate cn.pool.ntp.org1.4yum安装yuminstall-ywgetnet-tools nfs-utils lrzsz gcc gcc-c++makecmake libxml2-devel openssl-develcurlcurl-develunzipsudontp libaio-develwgetvimncurses-devel autoconf automake zlib-devel python-devel epel-release openssh-server socat ipvsadm conntrackyuminstalldocker-ce-20.10.17-y#yum install docker-ce-20.10.17 -y --allowerasing#'--allowerasing' 来替换冲突的软件包systemctl startdockersystemctlenabledocker如果包冲突可以用:yum install docker-ce -y --allowerasing1.5安装后配置(1)开启包转发功能和修改内核参数modprobe br_netfiltercat/etc/sysctl.d/docker.confEOF net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.ipv4.ip_forward = 1 EOF#使参数生效sysctl-p/etc/sysctl.d/docker.conf在/etc/sysconfig/modules/目录下新建文件如下cat/etc/sysconfig/modules/br_netfilter.modules modprobe br_netfilter增加权限chmod755/etc/sysconfig/modules/br_netfilter.modules重启机器模块也会自动加载[root@localhost ~]# lsmod |grep br_netfilterbr_netfilter222090bridge1361731br_netfilter注:Docker 安装后出现:WARNING: bridge-nf-call-iptables is disabled 的解决办法: net.bridge.bridge-nf-call-ip6tables=1net.bridge.bridge-nf-call-iptables=1net.ipv4.ip_forward=1:将Linux系统作为路由或者VPN服务就必须要开启IP转发功能。当linux主机有多个网卡时一个网卡收到的信息是否能够传递给其他的网卡 ,如果设置成1 的话 可以进行数据包转发,可以实现VxLAN 等功能。不开启会导致docker部署应用无法访问。#重启dockersystemctl restartdocker(2)配置阿里云容器镜像加速器2、配置本地容器镜像仓库参考192.169.29.134需要单独执行的命令上传registry.tar到/root/下dockerload-iregistry.tardockerrun-d--nameregistry-p5000:5000-v/opt/registry:/var/lib/registry registry:latest192.168.29.133需要单独执行的命令1.vim /etc/docker/daemon.json{"registry-mirrors":["这块在阿里容器镜像服务复制"],"insecure-registries":["192.168.29.134:5000"]}systemctl daemon-reload systemctl restartdocker2.上传busybox.tar或者其他容器到/root/下#解压镜像dockerload-ibusybox.tar#给镜像重命名dockertag busybox:latest192.168.29.134:5000/busybox:latest#上传镜像dockerpush192.168.29.134:5000/busybox测试curlhttp://192.168.29.134:5000/v2/_catalog{"repositories":[