1.发布镜像
1)到官方仓库
注册dockerhub https://hub.docker.com/signup,需要有一个账号
| 1 | # 1、查看登录命令 | |
|---|---|---|
| 2 | [root@kuangshen tomcat]# docker login —help | |
| 3 | Usage: docker login [OPTIONS] [SERVER] | |
| 4 | # 2、登录 | |
| 5 | [root@kuangshen tomcat]# docker login -u kuangshen | |
| 6 | Password: | |
| 7 | WARNING! Your password will be stored unencrypted in | |
| /root/.docker/config.json. | ||
| 8 | Configure a credential helper to remove this warning. See | |
| 9 | https://docs.docker.com/engine/reference/commandline/login/#credentials- | |
| store | ||
| 10 | Login Succeeded | |
| 11 | # 3、将镜像发布出去 | |
| 12 | [root@kuangshen tomcat]# docker push kuangshen/diytomcat:1.0 | |
| 13 | The push refers to repository [docker.io/library/diytomcat] | |
| 14 | 0f02399c6fdf: Preparing | |
| 15 | e79ea0c3a34e: Preparing | |
| 16 | 09281fa8fe38: Preparing | |
| 17 | b56a902b0aef: Preparing | |
| 18 | 0683de282177: Preparing | |
| 19 | # 拒绝:请求的资源访问被拒绝 | |
| 20 | denied: requested access to the resource is denied | |
| 21 | ||
| 22 | # 问题:本地镜像名无帐号信息,解决加 tag即可 | |
| 23 | docker tag 251ca4419332 kuangshen/diytomcat:1.0 | |
| 24 | ||
| 25 | # 再次 push, ok | |
| 26 | [root@kuangshen tomcat]# docker push kuangshen/diytomcat:1.0 | |
| 27 | The push refers to repository [docker.io/kuangshen/diytomcat] | |
| 28 | 0f02399c6fdf: Pushing [========> | ] |
| 9.729MB/59.76MB | ||
| 29 | e79ea0c3a34e: Pushing [==========> | ] |
| 3.188MB/15.41MB | ||
| 30 | 09281fa8fe38: Pushing [> | ] |
| 3.823MB/324MB | ||
| 31 | b56a902b0aef: Pushed | |
| 32 | 0683de282177: Pushing [=> | ] |
| 5.997MB/237.1MB |
2)发布到自己的仓库
docker仓库构建
1)自定义仓库配置
注意 这个配置文件里边的ip地址和下边的Ip地址要一致 都写服务器的ip地址
docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always registry# 开启官方镜像仓库设置 端口开机自启动 默认是443端口 我们的客户端认为不安全 就需要下边这个配置文件 让客户端觉得安全vim /etc/docker/daemon.json{"insecure-registries": ["192.168.88.10:5000"]}systemctl restart docker # 重启docker ps -a # 查看
2)上传
上传格式 仓库地址/Username/ImageName:tardocker push 仓库地址/Username/ImageName:tar例子:docker push 192.168.88.10:5000/tomcat:v1``.``0
3)查看
curl -XGET http://192.168.88.10:5000/v2/_catalog #查看已有镜像
4)客户端配置
vim /etc/docker/daemon.json
{
"insecure-registries": ["192.168.88.10:5000"]
}
systemctl restart docker # 重启
docker ps -a # 查看
curl -XGET http://192.168.88.10:5000/v2/_catalog #查看已有镜像
5)从仓库下载
docker pull 192.168.88.10:5000/tomcat:v1.0
2.harbor 仓库
都在文档里自己看
