sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
sudo yum install -y yum-utils \ device-mapper-persistent-data \ lvm2
sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo docker run hello-world
參考連接:
CentOS Debian 安裝html
pip -V
yum -y install epel-release yum -y install python-pip
pip install --upgrade pip
pip install docker-compose
參考連接:
CentOS7下安裝Docker-Composepython
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://m3kj4rry.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
docker pull registry
mkdir /usr/local/csp_registry
docker run -d -p 5000:5000 --name=csp_registry --restart=always --privileged=true -v /usr/local/docker_registry:/var/lib/registry registry
解釋:
-p 5000:5000 端口
--name=csp_registry 運行的容器名稱
--restart=always 自動重啓
--privileged=true centos7中的安全模塊selinux把權限禁止了,加上這行是給容器增長執行權限
-v /usr/local/docker_registry:/var/lib/registry 把主機的/usr/local/docker_registry 目錄掛載到registry容器的/var/lib/registry目錄下,假若有刪除容器操做,咱們的鏡像也不會被刪除linux
{ "insecure-registries":["主機的IP地址或者域名:5000"], "registry-mirrors": ["https://registry.docker-cn.com"] }
docker tag hello-world ip:port/hello-world
docker push ip:port/hello-world
docker rmi ip:port/hello-world docker rmi hello-world
docker pull ip:port/hello-world
參考連接 centos7 docker 搭建本地私有倉庫docker
cd /usr/local mkdir ssl cd ssl openssl genrsa -out ca.key 2048 openssl req -new -key ca.key -out ca.csr openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt
cd /usr/local mkdir auth docker run \ --entrypoint htpasswd \ registry -Bbn testuser testpassword > auth/htpasswd
注:testuser testpassword 表明 登陸的 用戶和密碼shell
docker run -d \ --restart=always \ --name registry \ -v /usr/local/auth:/auth \ -v /usr/local/ssl:/certs \ -e REGISTRY_HTTP_ADDR=0.0.0.0:5000 \ -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/server.crt \ -e REGISTRY_HTTP_TLS_KEY=/certs/server.key \ -e "REGISTRY_AUTH=htpasswd" \ -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \ -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \ -p 5000:5000 \ registry
docker login ip:port
# docker-compose.yml version: '3.1' services: registry: image: registry ports: - 5000:5000 environment: REGISTRY_HTTP_TLS_CERTIFICATE: /certs/server.crt REGISTRY_HTTP_TLS_KEY: /certs/server.key REGISTRY_AUTH: htpasswd REGISTRY_AUTH_HTPASSWD_PATH: /auth/htpasswd REGISTRY_AUTH_HTPASSWD_REALM: Registry Realm volumes: - /usr/local/docker_registry:/var/lib/registry - /usr/local/ssl:/certs - /usr/local/auth:/auth
參考連接json