Centos 安装Docker

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine \
                  docker-ce


yum install -y yum-utils \
           device-mapper-persistent-data \
           lvm2 --skip-broken

# 设置docker镜像源
yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo

yum makecache fast
#centos8 执行 dnf makecache


yum install -y docker-ce



# 关闭 防火墙 根据情况决定
#systemctl stop firewalld
# 禁止开机启动防火墙
#systemctl disable firewalld

# 查看版本
docker -v

安装DockerCompose

# 安装
curl -L https://github.com/docker/compose/releases/download/1.23.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

# 修改权限
chmod +x /usr/local/bin/docker-compose

#Base自动补全命令
# 补全命令
curl -L https://raw.githubusercontent.com/docker/compose/1.29.1/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose

# 如果这里出现错误,需要修改自己的hosts文件
echo "199.232.68.133 raw.githubusercontent.com" >> /etc/hosts

docker镜像不可控力导致无法访问

 vim /etc/docker/daemon.json

{
    "proxies": {        
        "http-proxy": "http://127.0.0.1:7890",
        "https-proxy": "http://127.0.0.1:7890",
        "no-proxy": "localhost,127.0.0.0/8"
    }
}

idea 直接部署Docker

vim /usr/lib/systemd/system/docker.service

#找到 ExecStart,在最后面添加-H tcp://0.0.0.0:2375 -H unix:///var/run/dokcer.sock

#重启
systemctl daemon-reload
systemctl restart docker

# 开放端口  不能直接开放全部的,要开放特定IP 的避免被攻击
firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="指定的IP地址" port protocol="tcp" port="2375" accept' --permanent

# 删除
# firewall-cmd --zone=public --remove-rich-rule='rule family="ipv4" source address="指定的IP地址" port protocol="tcp" port="2375" accept' --permanent

#更新规则
firewall-cmd --reload


设置容器自启动

docker update --restart=always [容器名或容器ID]

查看之前的启动命令

 docker pull cucker/get_command_4_run_container  
 docker run --rm -v /var/run/docker.sock:/var/run/docker.sock cucker/get_command_4_run_container [容器名称]/[容器ID]


# 我的仓库
docker login www.itzaj.com:5000
# 输入账号密码

docker pull www.itzaj.com:5000/cucker/get_command_4_run_container:1.3

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock  www.itzaj.com:5000/cucker/get_command_4_run_container:1.3 [容器名称]

Docker 修改容器存储位置

#查看默认储存位置
docker info

#Docker root Dir 就是默认位置


# 关闭docker
docker stop 容器名 #先关闭所有在运行的容器
sudo systemctl stop docker.service	#关闭docker服务


#在目的盘创建新的文件夹,并移动原来的镜像和容器

mkdir /db1/dockerData
cd /db1/dockerData
cp -r /var/lib/docker .

# 修改docker的配置文件,指定新存储位置
 vim /etc/docker/daemon.json


{
    "data-root": "/db1/dockerData"
}


#重启服务
sudo systemctl daemon-reload
sudo systemctl restart docker

访问不安全的地址

 vim /etc/docker/daemon.json



{
        "insecure-registries":["www.itzaj.com:5000"]
}

综合JSON

{

  
    "data-root": "/db1/dockerData",
    "proxies": {        
        "http-proxy": "http://127.0.0.1:7890",
        "https-proxy": "http://127.0.0.1:7890",
        "no-proxy": "localhost,127.0.0.0/8"
    },
 "insecure-registries":["www.itzaj.com:5000"]



}

新项目全家桶


docker login www.itzaj.com:5000