Docker安装及使用

  1. 安装docker

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

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

robinschen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值