Docker如何连接至本地私服Harbor中 推送镜像、查看镜像、下载镜像

1.基础环境

  • win/mac/linux
  • 装有Docker
  • 私服 Harbor

Docker

Docker中文站
Docker官方站
下载并安装Docker
Docker如何连接至本地私服Harbor中 推送镜像、查看镜像、下载镜像_第1张图片

Harbor

Harbor GitHub
Harbor 官方地址
下载并安装 Harbor (测试的话 推荐用Docker镜像来启动Harbor 减少环境问题)

2.配置流程

登录Harbor

启动后 访问 Harbor 的页面
登录进入
Docker如何连接至本地私服Harbor中 推送镜像、查看镜像、下载镜像_第2张图片
进入后显示
记住这几个关键信息(每个人不一样):地址(172.16.1.77)、账号(xxxxx)、密码(xxxxxx)
Docker如何连接至本地私服Harbor中 推送镜像、查看镜像、下载镜像_第3张图片

配置Docker

打开Docker的设置
(非可视化的Docker时 一般为 /etc/docker/daemon.json)
Docker如何连接至本地私服Harbor中 推送镜像、查看镜像、下载镜像_第4张图片
修改配置文件
配置私服地址 加入 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如何连接至本地私服Harbor中 推送镜像、查看镜像、下载镜像_第5张图片
这边下载完的结果:

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如何连接至本地私服Harbor中 推送镜像、查看镜像、下载镜像_第6张图片

推送镜像

查看当前镜像

docker images

Docker如何连接至本地私服Harbor中 推送镜像、查看镜像、下载镜像_第7张图片
推送至harbor

docker push 172.16.1.77/alibaba-cloud/nginx

Docker如何连接至本地私服Harbor中 推送镜像、查看镜像、下载镜像_第8张图片
推送完成

你可能感兴趣的:(CI/CD,docker,运维,容器)