1、安装准备
预防volumes项出现Permission denied
setenforce 0 #关闭selinux防火墙,临时关闭。永久关闭需改/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=disabled并重启
systemctl stop firewalld.service #关闭firewalld防火墙
2、安装Docker
yum install docker docker -v ##查看版本 service docker start ##开启docker服务才能用其他命令 chkconfig docker on docker images
3、配置Docker加速器
3.1、阿里云的加速器,将mirror的配置添加到docker daemon的启动参数中。注意自己注册申请,cd6xo91e.mirror.aliyuncs.com换成自己的。
自己手工修改:将/etc/systemd/system/docker.service 文件的“ExecStart=/usr/bin/docker-current daemon“替换成
ExecStart=/usr/bin/docker daemon --registry-mirror=https://cd6xo91e.mirror.aliyuncs.com
也可以使用如下的脚本,
# 系统要求 CentOS 7 以上,Docker 1.9 以上。 sudo cp -n /lib/systemd/system/docker.service /etc/systemd/system/docker.service sudo sed -i "s|ExecStart=/usr/bin/docker-current daemon|ExecStart=/usr/bin/docker daemon --registry-mirror=https://cd6xo91e.mirror.aliyuncs.com|g" /etc/systemd/system/docker.service # (sed -i ‘s/要被取代的字串/新的字串/g‘ ) sudo systemctl daemon-reload sudo service docker restart
阿里的原句其实如下,是“docker daemon“,在我的机器上“docker-current daemon“。
sudo sed -i "s|ExecStart=/usr/bin/docker daemon|ExecStart=/usr/bin/docker daemon --registry-mirror=https://cd6xo91e.mirror.aliyuncs.com|g" /etc/systemd/system/docker.service
3.2、也可以配置daocloud的加速器,注意自己注册申请,0f3bdc1e.m.daocloud.io换成自己的。不用它的脚本,自己修改,将/etc/systemd/system/docker.service 文件的“ExecStart=/usr/bin/docker-current daemon“替换成
ExecStart=/usr/bin/docker daemon --registry-mirror=http://0f3bdc1e.m.daocloud.io
4、安装docker-Compose(持续化、简化docker运行时的定义命令)
curl -L "https://github.com/docker/compose/releases/download/1.8.1/docker-compose-$(uname -s)-$(uname -m)" > /usr/local/bin/docker-compose # 上面超慢的,可以直接到https://github.com/docker/compose/releases下载对应版本的文件(这里是docker-compose-Linux-x86_64),并放置到/usr/local/bin/下改名为docker-compose chmod +x /usr/local/bin/docker-compose docker-compose -v ##查看版本 docker-compose up ##升级 docker-compose up -build ##如果yuml或者dockerfile文件修改了,直接用改命令重构
5、使用nsenter(在宿主机使用容器的shell)
5.1 安装:
cd /tmp wget https://www.kernel.org/pub/linux/utils/util-linux/v2.29/util-linux-2.29.tar.gz tar zxf util-linux-2.29.tar.gz cd util-linux-2.29 ./configure --without-ncurses # 如果上面出现gcc错误,安装gcc: yum -y install gcc make nsenter cp nsenter /usr/local/bin
5.2 使用:
PID=`docker inspect --format "{{ .State.Pid }}" node1 ` nsenter --target $PID --mount --uts --ipc --net --pid # 上面2条命令可以合一: nsenter --target `docker inspect --format "{{ .State.Pid }}" node1` --mount --uts --ipc --net --pid # ok了可以随便输入linux命令检查一下看看,比如: ls #查看文件 ls -l #查看权限
6、Docker清除命令
docker kill $(docker ps -q) ; docker rm $(docker ps -a -q) ; docker rmi -f $(docker images -q -a)
时间: 2024-10-23 12:26:21