文章目录
-
- 一、环境初始化配置
- 二、安装Docker
- 三、优化配置
- 四、基础命令
一、环境初始化配置
1、关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
setenforce 0sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
2、配置时间同步
yum install -y ntp ntpdate
ntpdate cn.pool.ntp.org
定时同步配置:每天凌晨1点执行同步时间操作
echo "0 1 * * * /usr/sbin/ntpdate cn.pool.ntp.org" >> /var/spool/cron/root
systemctl restart crond
二、安装Docker
1、配置国内阿里Yum源
yum -y install yum-utils
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
2、安装Docker依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
3、安装Docker(默认最新版)
yum install docker-ce -y
4、启动并加入开机自启
systemctl start docker
systemctl enable docker
5、查看启动状态 && 查看版本信息
systemctl status docker
docker --version
三、优化配置
1、配置国内下载源
mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://cl2lpj44.mirror.aliyuncs.com"]
}
EOF
重启生效
systemctl daemon-reload
systemctl restart docker
2、开启包转发功能和修改内核参数
内核参数修改:br_netfilter 模块用于将桥接流量转发至iptables链,br_netfilter内核参数需要开启转发。
modprobe br_netfilter
cat > /etc/sysctl.d/docker.conf <<EOF
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
重启后模块失效,下面是开机自动加载模块的脚本:
cat >> /etc/rc.sysinit << EOF
#!/bin/bash
for file in /etc/sysconfig/modules/*.modules ; do
[ -x $file ] && $file
done
EOF
在/etc/sysconfig/modules/目录下新建文件如下
cat >> /etc/sysconfig/modules/br_netfilter.modules <<EOF
modprobe br_netfilter
EOF
增加权限
chmod 755 /etc/sysconfig/modules/br_netfilter.modules
配置完成后重启也会自动加载 br_netfilter 模块
lsmod |grep br_netfilter
四、基础命令
docker push # 上传镜像
docker pull # 下载镜像
docker start containerName # 启动容器
docker stop containerName # 停止容器
docker restart containerName # 重启容器
docker inspect containerName # 查看容器详细信息
docker ps --size # 查看运行中的容器
docker ps --size -a # 查看所有容器
docker images # 查看镜像
docker logs containerName # 查看容器日志
docker top containerName # 查看容器运行中的进程
docker stats containerName # 实时查看容器运行中进程
docker port containerName # 查看端口映射信息
docker rm # 删除容器
docker rmi # 删除镜像
docker rmi -f $(docker images -qa) # 删除所有容器
docker rm -f $(docker ps -qa) # 删除所有镜像
docker volume ls # 查看卷名称
docker volume inspect containerName # 查看卷详细信息
docker exec -it containerName /bin/bash # 进入容器
docker cp 1.txt containerName:/home # 负责本地文件到容器
docker save >containerNameV2.tar.gz containerName:v2 # 打包镜像文件
docker load < containerNameV2.tar.gz # 上传打包镜像文件
commit 93ed0e152108e1a containerName:v2 # 容器制作为镜像