文章目录
vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd
配置加上如下内容-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
Type=notify
NotifyAccess=main
EnvironmentFile=-/run/containers/registries.conf
EnvironmentFile=-/etc/sysconfig/docker
EnvironmentFile=-/etc/sysconfig/docker-storage
EnvironmentFile=-/etc/sysconfig/docker-network
Environment=GOTRACEBACK=crash
Environment=DOCKER_HTTP_HOST_COMPAT=1
Environment=PATH=/usr/libexec/docker:/usr/bin:/usr/sbin
ExecStart=/usr/bin/dockerd-current \
-H tcp://0.0.0.0:2375 \
-H unix:///var/run/docker.sock \
--add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
--default-runtime=docker-runc \
--exec-opt native.cgroupdriver=systemd \
--userland-proxy-path=/usr/libexec/docker/docker-proxy-current \
--init-path=/usr/libexec/docker/docker-init-current \
--seccomp-profile=/etc/docker/seccomp.json \
$OPTIONS \
$DOCKER_STORAGE_OPTIONS \
$DOCKER_NETWORK_OPTIONS \
$ADD_REGISTRY \
$BLOCK_REGISTRY \
$INSECURE_REGISTRY \
$REGISTRIES
DOCKER_HOST
的值为tcp://ip:2375
/src/main/docker
下,内容如下:FROM java:8
MAINTAINER https://chenjiabing666.github.io
# 指定虚拟卷,/tmp是tomcat运行时需要的,/usr/local/images是上传文件需要的,/usr/local/weblogs/demo是记录日志需要的
VOLUME ["/tmp","/usr/local/images","/usr/local/weblogs/demo"]
# 添加jar
ADD demo-server.jar demo.jar
# 暴露8080端口
EXPOSE 8080
# 运行jar
CMD ["java","-jar","demo.jar"]
<build>
<finalName>demo-server</finalName>
<plugins>
<!-- springBoot的maven打包插件 -->
<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.13</version>
<!-- 将docker:build这个动作绑定在package这个动作上,只要maven install 即可上传到远程服务器 -->
<executions>
<execution>
<id>build-image</id>
<phase>package</phase>
<goals>
<goal>build</goal>
</goals>
</execution>
</executions>
<configuration>
<!-- 指定镜像的名称+版本,必须是满足[a-z,0-9]这个正则才行 -->
<imageName>${project.artifactId}:${project.version}</imageName>
<!-- 覆盖相同标签镜像 -->
<forceTags>true</forceTags>
<!-- 指定Dockerfile的文件位置 -->
<dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>
<!-- 指定Dockerfile的文件位置 -->
<dockerHost>http://39.105.123.197:2375</dockerHost>
<!-- 指定jar包所在的位置 -->
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
</plugins>
</build>
-v
挂载即可docker run --name demo -p 8080:8080 -v /usr/local:/usr/local -v /tmp:/tmp -d 8877edd71d5a