linux下的docker私有仓库

环境准备

  • 使用两台机子, 一个做docker私有仓库,一个做docker镜像提交
  • 确保两台机子都安装的docker,并启动了docker服务
  • docker私有仓库的机子名为:docker-registry , ip为:192.168.1.101
  • docker镜像提交的机子名为:docker-app, ip为192.168.1.102

私有仓库的安装及镜像的推送

  • 在docker-registry机子上执行如下命令:
    docker run --name docker-registry -d -p 5000:5000 registry
  • 在docker-app机子上更改/etc/default/docker文件中的内容:
    DOCKER_OPTS="--insecure-registry 192.168.1.101:5000 --dns 114.114.114.114"

  • 修改 /lib/systemd/system/docker.service文件,以支持修改的docker配置文件能使用http协议

    EnvironmentFile=-/etc/default/docker
    ExecStart=/usr/bin/dockerd -H fd:// $DOCKER_OPTS
  • 重新加载docker服务及重启docker服务
  • 在docker-app机子上pull 一个镜像 如: nginx或tomcat
  • 然后查看该镜像的ID
  • 把该镜像作为push的标记
    docker tag IMAGE_ID 192.168.1.101:5000/nginx
  • 然后推送到仓库:
    docker push 192.168.1.101:5000/nginx

  • 查看是否成功: curl -X GET http://192.168.1.101:5000/v2/_catalog
  • 删掉本地镜像: docker rmi tomcat 192.168.1.101:5000/tomcat
  • 在docker-app上运行私有仓库的镜像: docker run --name nginx01 -p 80:80 -idt 192.168.1.101:5000/nginx
相关文章
相关标签/搜索