安装jdk8镜像
docker pull openjdk:8-jdk-alpine
maven插件推送方式
- 修改/etc/docker/daemon.json文件,加入hosts配置即可。 注意 使用本地docker构建,不要用的生产服务器上,这种方式容易被别人注入木马
本地局域网 192.168.10.222
1 2 3 4 5
|
{
"hosts":["tcp://0.0.0.0:2375","unix:///var/run/docker.sock"]
}
|
- 在settings.xml文件的同级目录创建settings-security.xml文件
在cmd命令行中使用,在bash中特殊字符会出现转义问题
1 2
|
mvn --encrypt-master-password <password> {4Cmy61mOMasHCreAdBngs40S7FJ8dFcD8MG9jCJKSNA=}
|
1 2 3 4
|
<?xml version="1.0" encoding="UTF-8"?> <settingsSecurity> <master>{4Cmy61mOMasHCreAdBngs40S7FJ8dFcD8MG9jCJKSNA=}</master> </settingsSecurity>
|
- 编辑settings.xml
最后使用你的私有仓库访问密码生成服务密码,将生成的密码写入到settings.xml的
1 2
|
mvn --encrypt-password <password> {RCeI2AmEXXgHmFttKbzhhXBLq/vQdczAluUl3Vd7tsg=}
|
1 2 3 4 5 6 7 8
|
<server> <id>docker-aliyun</id> <username>[email protected]</username> <password>{RCeI2AmEXXgHmFttKbzhhXBLq/vQdczAluUl3Vd7tsg=}</password> <configuration> <email>[email protected]</email> </configuration> </server>
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
|
2. 重新加载配置文件,并重启docker
> systemctl daemon-reload
> systemctl restart docker
3. 验证,直接访问:
> curl 127.0.0.1:2375/info
## jav 大专栏 【转】docker 部署 springboota项目
1. maven pom.xm 配置文件
```xml <build>
<plugins>
<!-- springboot打包 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.9</version>
<configuration>
<!-- 镜像名称 -->
<imageName>matosiki/springboot-docker-demo</imageName>
<!-- docker远程服务器地址 -->
<dockerHost>http://服务器IP:2375</dockerHost>
<!-- Dockerfile文件存放目录 -->
<dockerDirectory>src/main/docker</dockerDirectory>
<resources>
<resource>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
</plugins>
</build>
|
- 编写Dockerfile 文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
FROM openjdk:8-jdk-alpine
RUN set -xe && apk --no-cache add ttf-dejavu fontconfig
VOLUME /opt/tmp
ADD projectname-1.0.0-SNAPSHOT.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
EXPOSE 8080
|
- 编码运行
mvn clean package docker:build -Dmaven.test.skip=true
- 查看镜像
docker images
- 运行镜像,查看是否启动正常
docker run -d -p 8080:8080 matosiki/springboot-docker-demo
- 基于已有镜像运行 jar
1
|
docker run -d -p 1234:8080 -v /opt/docker/projectname-1.0.0-SNAPSHOT.jar:/usr/projectname-1.0.0-SNAPSHOT.jar --name SpringbootByJar openjdk:8-jdk-alpine java -jar /usr/projectname-1.0.0-SNAPSHOT.jar
|