1.基础环境
win/mac/linux
装有Docker
私服 Harbor
Docker
Docker中文站
Docker官方站
下载并安装Docker
Harbor
Harbor GitHub
Harbor 官方地址
下载并安装 Harbor (测试的话 推荐用Docker镜像来启动Harbor 减少环境问题)
2.配置流程
登录Harbor
启动后 访问 Harbor 的页面
登录进入
进入后显示
记住这几个关键信息(每个人不一样):地址(172.16.1.77)、账号(xxxxx)、密码(xxxxxx)
配置Docker
打开Docker的设置
(非可视化的Docker时 一般为 /etc/docker/daemon.json)
修改配置文件
配置私服地址 加入 insecure-registries
下面是我的配置 参考
{ "builder": { "gc": { "defaultKeepStorage": "20GB", "enabled": true } }, "debug": true, "experimental": true, "features": { "buildkit": false }, "insecure-registries": [ "172.16.1.77" ] }
保存后并重启docker
配置连接
配置好私服后 需要让docker登录到私服中
打开Shell执行
docker login 172.16.1.77
提示输入账号密码 即可显示登录成功
3.操作流程
下载镜像
随机下载一个Docker镜像
docker pull nginx
这边下载完的结果:
➜ docker pull nginx Using default tag: latest latest: Pulling from library/nginx 934ce60d1040: Pull complete 238b470e100d: Pull complete fd4ff90344fc: Pull complete 7be7509b8147: Pull complete fc07d3e6158f: Pull complete d44fa61c1ffa: Pull complete Digest: sha256:b8f2383a95879e1ae064940d9a200f67a6c79e710ed82ac42263397367e7cc4e Status: Downloaded newer image for nginx:latest docker.io/library/nginx:latest ~ took 25.6s
打包镜像
(也可以用刚才下载镜像直接推送至私服Harbor 这里是假设我们修改了一些东西 或者有自己的镜像)
通过 Dockerfile 打包一个新的Nginx镜像
然后推送至Harbor中
新建一个文件 Dockerfile
FROM nginx MAINTAINER wzk WORKDIR /usr/share/nginx/html EXPOSE 80 ENTRYPOINT ["nginx", "-g", "daemon off;"]
打包该镜像
docker build -t 172.16.1.77/alibaba-cloud/nginx .
-t 指 tag 打上标签
172.16.1.77是harbor的地址
alibaba-cloud是文件夹(这个随意)
nginx 是镜像名称
. 最后有个点 是指当前目录下的 Dockerfile
推送镜像
查看当前镜像
docker images
推送至harbor
docker push 172.16.1.77/alibaba-cloud/nginx
推送完成