dockerfile拉取私库镜像_Docker创建私有仓库

1. 安装运行Docker-Registrydocker run -d \

# 指定端口映射管理

-p 5000:5000 -v \

# 指定本地目录/root/lib/docker/registry/ 挂载到容器

/root/lib/docker/registry/:/var/lib/registry \

#指定镜像名称

registry

# 查看运行状态

[root@node1 registry]# docker ps

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAME

Sa1092621c937        registry            "/entrypoint.sh /etc…"   10 seconds ago      Up 8 seconds        0.0.0.0:5000->5000/tcp   compassionate_stonebraker

#查看创建的私有仓库中存在的镜像

curl 0.0.0.0:5000/v2/_catalog

{"repositories":[]} # 当前没有任何镜像2. 上传镜像到私有仓库# 创建一个镜像

# 新建目录

mkdir study-springboot-docker

touch Dockerfile

vi Dockerfile

FROM openjdk:8u181

VOLUME /tmp

ADD study-docker-0.0.1.jar app.jar

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","app.jar"]

# study-docker-0.0.1.jar 是一个基于Springboot的一个hello world程序

# 构建镜像

docker build -t springboot-docker .

# 查看构建好的镜像

[root@localhost springboot]# docker images

REPOSITORY                  TAG                 IMAGE ID            CREATED             SIZE

springboot-docker           latest              cab36712a915        19 minutes ago      640MB

# 标记镜像

docker tag springboot-docker 192.168.31.138:5000/springboot-docker:latest

# 当前机器ip为192.168.31.138

# 上传镜像到私有仓库

docker push 192.168.31.138:5000/springboot-docker:latest

Error response from daemon: Get https://192.168.31.138:5000/v2/: dial tcp 192.168.31.138:5000: connect: no route to host

报错:Error response from daemon: Get https://192.168.31.138:5000/v2/: dial tcp 192.168.31.138:5000: connect: no route to host

Docker 默认不允许非  HTTPS  方式推送镜像。我们可以通过 Docker 的配置选项来取消这个限制。

Ubuntu 14.04, Debian 7 WheezyDOCKER_OPTS="--registry-mirror=https://registry.docker-cn.com --insecure-registries=192.168.31.138:5000"

Ubuntu 16.04+, Debian 8+, centos 7

对于使用  systemd  的系统,请在  /etc/docker/daemon.json  中写入如下内容(如果文件不存

在请新建该文件){

"registry-mirror": [

"https://registry.docker-cn.com"

],

"insecure-registries": [

"192.168.31.138:5000"

]

}# 重启docker

systemctl restart docker# 再次push

docker push 192.168.31.138:5000/springboot-docker:latest

#查看创建的私有仓库中的镜像

curl 0.0.0.0:5000/v2/_catalog

{"repositories":[springboot-docker]} # springboot-docker镜像已经成功上传3. 拉取镜像

新开虚拟机,当前虚拟机ip为:192.168.31.137 与上面机器同属一个网段[root@node1 docker]# docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

# 当前机器没有任何镜像

# 尝试拉去192.168.31.138私有仓库中的镜像springboot-docker

[root@node1 docker]# docker pull 192.168.31.138:5000/springboot-docker:latest

Error response from daemon: Get https://192.168.31.138:5000/v2/: dial tcp 192.168.31.138:5000: connect: no route to host# 按照上述同样的方式进行处理

# 再次拉取

docker pull 192.168.31.138:5000/springboot-docker:latest

latest: Pulling from springboot-docker

55cbf04beb70: Pull complete

1607093a898c: Pull complete

9a8ea045c926: Pull complete

d4eee24d4dac: Pull complete

c58988e753d7: Pull complete

794a04897db9: Pull complete

70fcfa476f73: Pull complete

806029475e0c: Pull complete

67959b355155: Pull complete

64aa22c5f389: Pull complete

Digest: sha256:cedb5b62aff153b923594071205e63a565bb6d0d2de3ef2bb27bfa7e94e4d6ae

Status: Downloaded newer image for 192.168.31.138:5000/springboot-docker:latest

查看镜像docker images

REPOSITORY                              TAG                 IMAGE ID            CREATED                  SIZE

192.168.31.138:5000/springboot-docker   latest              cab36712a915        Less than a second ago   640MB

测试运行容器docker run -d -p 80:8080 192.168.31.138:5000/springboot-docker

# 访问测试

curl 127.0.0.1

hello spring boot docker!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值