赞
踩
开发机是:idea,windows环境
私服:centos+docker+register+registerui+registerfly
正式运行环境:centos+docker
主要是私服环境安装
(1)docker register
(2)dockerfly
(3)docker register ui
(4) 放开http推送
(1)安装register
docker run -d -p 5000:5000 --name registry registry:2
(2)安装dockerfly
docker search dockerfly
docker run --name dockerfly --restart=always -d -v /var/run/docker.sock:/var/run/docker.sock -p 2735:2735 -p 28083:28083 dockerfly
注意这里的2735端口,等下要用到。pom.xml文件中要指定。
网页:http://xxx.xxx.xxx.xxx:28083
用户名:admin
密码:1234
(3)安装register ui
docker pull joxit/docker-registry-ui:static
- docker run -p 8280:80 --name registry-ui \
- --link registry2:registry2 \
- -e REGISTRY_URL="http://registry2:5000" \
- -e DELETE_IMAGES="true" \
- -e REGISTRY_TITLE="Registry2" \
- -d joxit/docker-registry-ui:static
访问网页:http://xxx.xxx.xxx.xxx:8280
(4)修改Docker Daemon的配置文件,
①文件位置为
/etc/docker/daemon.json
,由于Docker默认使用HTTPS推送镜像,而我们的镜像仓库没有支持,所以需要添加如下配置,改为使用HTTP推送;
- {
- "insecure-registries": ["192.168.3.101:5000"]
- }
②最后使用如下命令重启Docker服务。
systemctl daemon-reload && systemctl restart docker
(1)先在pom.xml中添加插件。
- <build>
- <plugins>
- <plugin>
- <groupId>io.fabric8</groupId>
- <artifactId>docker-maven-plugin</artifactId>
- <version>0.33.0</version>
- <configuration>
- <!-- Docker 远程管理地址,registerfly中暴露的2735端口-->
- <dockerHost>http://192.168.3.101:2735</dockerHost>
- <!-- Docker 推送镜像仓库地址-->
- <pushRegistry>http://192.168.3.101:5000</pushRegistry>
- <images>
- <image>
- <!--由于推送到私有镜像仓库,镜像名需要添加仓库地址-->
- <name>192.168.3.101:5000/mall-tiny/${project.name}:${project.version}</name>
- <!--定义镜像构建行为-->
- <build>
- <!--定义基础镜像-->
- <from>java:8</from>
- <args>
- <JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
- </args>
- <!--定义哪些文件拷贝到容器中-->
- <assembly>
- <!--定义拷贝到容器的目录-->
- <targetDir>/</targetDir>
- <!--只拷贝生成的jar包-->
- <descriptorRef>artifact</descriptorRef>
- </assembly>
- <!--定义容器启动命令-->
- <entryPoint>["java", "-jar","/${project.build.finalName}.jar"]</entryPoint>
- <!--定义维护者-->
- <maintainer>macrozheng</maintainer>
- </build>
- </image>
- </images>
- </configuration>
- </plugin>
- </plugins>
- </build>

注意:这里的2735端口就是register-fly暴露的端口。
(2)增加完成后,按照图下所示,先package,然后再docker:build就可以生成docker image了。
可以到register服务器上用docker images看生成的镜像。
(3)docker:push推送到服务器上面
执行docker:push后,登录到网页registerui,看服务器上是不是有image。
进入正式运行服务器上,使用pull xxx.xxx.xxx.xxx:5000/name:tag将image拉取下来。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。