CentOS 安装配置 Docker 和 Docker Compose

目录

一、安装 Docker Engine

1.更新

bash
yum update

2.添加YUM源

bash
tee /etc/yum.repos.d/docker.repo <<-'EOF'
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF

3.安装 Docker Engine

https://docs.docker.com/engine/installation/linux/centos/

bash
yum install -y docker-engine

4.开启服务

bash
systemctl enable docker.service

5.启动

bash
systemctl start docker

6.docker 用户组

docker 运行需要ROOT权限,其他用户运行docker命令需要使用sudo。因此需要创建非root用户添加到docker组

bash
groupadd docker
usermod -aG docker dmfy

二、安装 docker-compose

via https://docs.docker.com/compose/compose-file/

国外主机

bash
curl -L https://github.com/docker/compose/releases/download/1.9.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose && \
chmod +x /usr/bin/docker-compose

国内主机

bash
curl -L https://get.daocloud.io/docker/compose/releases/download/1.9.0/docker-compose-`uname -s`-`uname -m` > /usr/bin/docker-compose && \
chmod +x /usr/bin/docker-compose

查看版本

bash
docker-compose --version

三、配置 Docker 加速器

阿里云加速(推荐)

bash
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://rvg03xpp.mirror.aliyuncs.com"]
}
EOF

重启

bash
systemctl daemon-reload
systemctl restart docker

Daocloud 加速

bash
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://56c3a7e7.m.daocloud.io
systemctl restart docker

四、配置 docker-ssh 工具

https://github.com/phusion/baseimage-docker

bash
curl --fail -L -O https://github.com/phusion/baseimage-docker/archive/master.tar.gz && \
tar xzf master.tar.gz && \
sudo ./baseimage-docker-master/install-tools.sh

工具二:docker-ssh

https://github.com/jpetazzo/nsenter/blob/master/docker-enter

下载配置文件:

http://files.wangyan.org/conf/bashrc-docker.zip

bash
vim ~/.bashrc
# Source docker-ssh
if [ -f ~/.bashrc_docker ]; then
        . ~/.bashrc_docker
fi

五、volume 插件

六、容器备份

提交镜像

bash
docker commit -p 35d86f745776 dmfy-mariadb-20170321

保存镜像

bash
docker save dmfy-mariadb-20170321 > ~/dmfy-mariadb-20170321

载入镜像

bash
docker load -i ~/dmfy-mariadb-20170321

方法二:

导出容器

bash
docker export 70fbab60962d > ~/seafile-container-20160811.tar

导入容器为一个镜像

bash
cat ~/seafile-container-20160811.tar | docker import - seafile:latest 
ESC