yum -y install docker
##修改内网镜像仓库
vim /etc/docker/daemon.json
##如下
[root@k8s-slave2 chenwei]# cat /etc/docker/daemon.json
{
"insecure-registries": ["172.30.0.0/16"]
,"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
###开启自动启动
systemctl enable docker
###添加docker组用户
sudo groupadd docker
usermod -G docker chenwei(改成自己的用户名)
##重启docker生效镜像库
systemctl restart docker
2.清理无用镜像数据
2.1 清理空间
注:(非必须,如果空间不足就需要执行./clear.sh 脚本)
问题:在docker pull的时候遇到如下问题
failed to register layer: devmapper: Thin Pool has 107394 free data blocks which is less than minimum required 163840 free data blocks. Create more free space in thin pool or use dm.min_free_space option to change behavior
docker rm $(docker ps -q -f status=exited)
docker volume rm $(docker volume ls -qf dangling=true)
docker rmi $(docker images --filter "dangling=true" -q --no-trunc)
2.2 清理docker日志
cat clear.sh
#!/bin/bash
echo ==================== start clean docker containers logs ==========================
logs=$(find /var/lib/docker/containers/ -name '*-json.log')
echo "$logs" |while read line
do
echo "cleanlogs:logs ${line}"
cat /dev/null > ${line}
done
echo ==================== end clean docker containers logs =========================
2.2.1 定时清理docker日志
vim /usr/sbin/clearlog
#!/bin/bash
echo ==================== start clean docker containers logs ==========================
logs=$(find /var/lib/docker/containers/ -name '*-json.log')
echo "$logs" |while read line
do
echo "cleanlogs:logs ${line}"
cat /dev/null > ${line}
done
echo ==================== end clean docker containers logs =========================
|
######定时任务配置
crontab -e
##加入以下内容
30 1 * * * /bin/bash /usr/sbin/clearlog
##查看结果
crontab -l
##重启crond生效
systemctl restart crond
3.开启远程访问
Centos7
##添加配置
/usr/lib/systemd/system/docker.service
-H tcp://0.0.0.0:2375
## 访问远程
docker -H 172.16.13.76:2375 info
4. docker限制内存
方法一:静态修改 -m
-m参数:限制docker容器最大使用内存
例如:$ docker run -it -m 300M --memory-swap -1 --name con1 u-stress /bin/bash
上面的 docker run 命令中通过 -m 选项限制容器使用的内存上限为 300M。
同时设置 memory-swap 值为 -1,它表示容器程序使用内存的受限,而可以使用的 swap 空间使用不受限制(宿主机有多少 swap 容器就可以使用多少)。
方法二:动态修改 docker update
docker update 动态修改docker容器内存
例如:把一个运行着gitlab 的容器内存限制在2048M以内
docker update --memory 2048m --memory-swap -1 gitlab
5. docker-compose使用
5.1 安装
pip install --upgrade pip
pip install docker-compose
报错:
ERROR: Package 'more-itertools' requires a different Python: 2.7.5 not in '>=3.5'
处理:
pip install more-itertools==5.0.0