Eureka结构
先点击Maven管理里的clean再package打包
通过Xftp将生成的jar文件和Dockerfile放入指定目录,如:
在当前目录下执行
docker build -t jar名 -f dockerfile名
这个是因为当前目录没有dockerFile文件
[root@ myJavaPro]# docker build -t cains-eureka-2.0.1.jar . -f jarDockerfile
unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /usr/local/myJavaPro/jarDockerfile: no such file or directory
以下是安装mvn,因为微服务项目是用pom管理各依赖
[root@maven]# ll
total 16592
drwxr-xr-x 6 root root 99 Apr 23 23:02 apache-maven-3.3.9
-rw-r--r-- 1 root root 8491533 Nov 18 2015 apache-maven-3.3.9-bin.tar.gz
-rw-r--r-- 1 root root 8491533 Nov 18 2015 apache-maven-3.3.9-bin.tar.gz.1
[root@maven]# vim /etc/profile
[root@maven]# source /etc/pro
profile profile.d/ protocols
[root@maven]# source /etc/profile
[root@maven]# mvn -v
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: /usr/local/maven/apache-maven-3.3.9
Java version: 1.8.0_242, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.el8_1.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.18.0-147.5.1.el8_1.x86_64", arch: "amd64", family: "unix"
[root@]# cd ..
total 0
[root@local]# cd myJavaPro/
还是刚刚的问题
[root@myJavaPro]# docker build -t cains-eureka-2.0.1.jar . -f jarDockerfile
unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /usr/local/myJavaPro/jarDockerfile: no such file or directory
[root@myJavaPro]# docker ps -a
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
[root@myJavaPro]# service docker start
Redirecting to /bin/systemctl start docker.service
[root@myJavaPro]# docker build -t cains-eureka-2.0.1.jar . -f jarDockerfile
unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /usr/local/myJavaPro/jarDockerfile: no such file or directory
[root@myJavaPro]# cd cains-eureka-2.0.1.jar
-bash: cd: cains-eureka-2.0.1.jar: Not a directory
[root@myJavaPro]# free -h
total used free shared buff/cache available
Mem: 1.8Gi 1.4Gi 70Mi 10Mi 282Mi 195Mi
Swap: 3.9Gi 411Mi 3.5Gi
此时在该目录下新建了Dockerfile。
[root@myJavaPro]# docker build -t cains-eureka-2.0.1.jar . -f Dockerfile
Sending build context to Docker daemon 6.144kB
Step 1/4 : FROM openjdk:8-jdk-alpine
8-jdk-alpine: Pulling from library/openjdk
e7c96db7181b: Pull complete
f910a506b6cb: Pull complete
c2274a1a0e27: Pull complete
Digest: sha256:94792824df2df33402f201713f932b58cb9de94a0cd524164a0f2283343547b3
Status: Downloaded newer image for openjdk:8-jdk-alpine
---> a3562aa0b991
Step 2/4 : VOLUME /tmp
---> Running in fe79c54f8e00
Removing intermediate container fe79c54f8e00
---> a645b8538bd4
Step 3/4 : ADD cains-eureka.jar app.jar
ADD failed: stat /var/lib/docker/tmp/docker-builder162725566/cains-eureka.jar: no such file or directory
[root@myJavaPro]# docker build -t cains-eureka-2.0.1.jar . -f Dockerfile
Sending build context to Docker daemon 6.144kB
Step 1/4 : FROM openjdk:8-jdk-alpine
---> a3562aa0b991
Step 2/4 : VOLUME /tmp
---> Using cache
---> a645b8538bd4
Step 3/4 : ADD cains-eureka-2.0.1.jar app.jar
---> 5506440bee2e
Step 4/4 : ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
---> Running in 02993d276a19
Removing intermediate container 02993d276a19
---> d8dfb85ff350
Successfully built d8dfb85ff350
Successfully tagged cains-eureka-2.0.1.jar:latest
可以看出已经生成了镜像
[rootmyJavaPro]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
cains-eureka-2.0.1.jar latest d8dfb85ff350 4 minutes ago 105MB
jenkins/jenkins latest 59f8784e08ee 3 weeks ago 619MB
nginx latest 6678c7c2e56c 7 weeks ago 127MB
openjdk 8-jdk-alpine a3562aa0b991 11 months ago 105MB
beginor/gitlab-ce 11.0.1-ce.0 e76a6ec6e22e 22 months ago 1.61GB
创建容器命令 docker run -p port:port image-name
[root@myJavaPro]# docker run -p 8761:8761 cains-eureka-2.0.1.jar
此时报错 no main manifest attribute, in /app.jar,意思是没有主入口
no main manifest attribute, in /app.jar
把目录分的细点
[root@myJavaPro]# mkdir 20200424
[root@myJavaPro]# cd 20200424/
[root@20200424]#
[root@20200424]# docker run -p 8761:8761 cains-eureka-2.0.1.jar
no main manifest attribute, in /app.jar
这时在pom文件中加入一段plugin
<plugin> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
重新生成jar包
[root@20200424]# docker build -t cains-eureka-2.0.1.jar . -f Dockerfile
Sending build context to Docker daemon 46.41MB
Step 1/4 : FROM openjdk:8-jdk-alpine
---> a3562aa0b991
Step 2/4 : VOLUME /tmp
---> Using cache
---> a645b8538bd4
Step 3/4 : ADD cains-eureka-2.0.1.jar app.jar
---> 487be6e73af3
Step 4/4 : ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
---> Running in 71f7d6ae780f
Removing intermediate container 71f7d6ae780f
---> 53fcd00e9d93
Successfully built 53fcd00e9d93
Successfully tagged cains-eureka-2.0.1.jar:latest
[root@20200424]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
cains-eureka-2.0.1.jar latest 53fcd00e9d93 55 seconds ago 151MB
<none> <none> d8dfb85ff350 2 hours ago 105MB
jenkins/jenkins latest 59f8784e08ee 3 weeks ago 619MB
nginx latest 6678c7c2e56c 7 weeks ago 127MB
openjdk 8-jdk-alpine a3562aa0b991 11 months ago 105MB
beginor/gitlab-ce 11.0.1-ce.0 e76a6ec6e22e 22 months ago 1.61GB
构建基于Eureka镜像的容器成功
[root@20200424]# docker build -t cains-eureka-2.0.1.jar . -f Dockerfile
Sending build context to Docker daemon 46.41MB
Step 1/4 : FROM openjdk:8-jdk-alpine
---> a3562aa0b991
Step 2/4 : VOLUME /tmp
---> Using cache
---> a645b8538bd4
Step 3/4 : ADD cains-eureka-2.0.1.jar app.jar
---> Using cache
---> 487be6e73af3
Step 4/4 : ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
---> Using cache
---> 53fcd00e9d93
Successfully built 53fcd00e9d93
Successfully tagged cains-eureka-2.0.1.jar:latest
[root@20200424]# dockre ps -a
-bash: dockre: command not found
[root@20200424]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f6b33f7429f0 d8dfb85ff350 "sh -c 'java $JAVA_O…" About a minute ago Exited (1) About a minute ago lucid_rosalind
b06dd06320f0 d8dfb85ff350 "sh -c 'java $JAVA_O…" 2 hours ago Exited (1) 2 hours ago adoring_kepler
ebb8efe1bb17 beginor/gitlab-ce:11.0.1-ce.0 "/assets/wrapper" 2 weeks ago Up 3 hours (healthy) 22/tcp, 0.0.0.0:8090->80/tcp, 0.0.0.0:8443->443/tcp gitlab
5cae6015b7e3 jenkins/jenkins "/sbin/tini -- /usr/…" 3 weeks ago Exited (255) 3 hours ago 0.0.0.0:50000->50000/tcp, 0.0.0.0:8081->8080/tcp jenkins
b85d190fc297 nginx "nginx -g 'daemon of…" 3 weeks ago Exited (255) 3 hours ago 0.0.0.0:8765->80/tcp docker-nginx0331
运行该容器
[root@20200424]# docker start f6b33f7429f0
f6b33f7429f0
[root@20200424]# docker start ebb8efe1bb17
ebb8efe1bb17
[root@20200424]# docker start 5cae6015b7e3
5cae6015b7e3
[root@20200424]#
Connection closed by foreign host.
Disconnected from remote host(mineCentos8) at 12:56:18.
[root@/]# docker rm f6b33f7429f0
f6b33f7429f0
[root@/]# docker rm b06dd06320f0
b06dd06320f0
[root@/]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ebb8efe1bb17 beginor/gitlab-ce:11.0.1-ce.0 "/assets/wrapper" 2 weeks ago Up 14 hours (healthy) 22/tcp, 0.0.0.0:8090->80/tcp, 0.0.0.0:8443->443/tcp gitlab
5cae6015b7e3 jenkins/jenkins "/sbin/tini -- /usr/…" 3 weeks ago Up 11 hours 0.0.0.0:50000->50000/tcp, 0.0.0.0:8081->8080/tcp jenkins
b85d190fc297 nginx "nginx -g 'daemon of…" 3 weeks ago Exited (255) 14 hours ago 0.0.0.0:8765->80/tcp docker-nginx0331
[root@/]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ebb8efe1bb17 beginor/gitlab-ce:11.0.1-ce.0 "/assets/wrapper" 2 weeks ago Up 14 hours (healthy) 22/tcp, 0.0.0.0:8090->80/tcp, 0.0.0.0:8443->443/tcp gitlab
5cae6015b7e3 jenkins/jenkins "/sbin/tini -- /usr/…" 3 weeks ago Up 11 hours 0.0.0.0:50000->50000/tcp, 0.0.0.0:8081->8080/tcp jenkins
b85d190fc297 nginx "nginx -g 'daemon of…" 3 weeks ago Exited (255) 14 hours ago 0.0.0.0:8765->80/tcp docker-nginx0331
[root@/]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
cains-eureka-2.0.1.jar latest 53fcd00e9d93 11 hours ago 151MB
<none> <none> d8dfb85ff350 13 hours ago 105MB
jenkins/jenkins latest 59f8784e08ee 3 weeks ago 619MB
nginx latest 6678c7c2e56c 7 weeks ago 127MB
openjdk 8-jdk-alpine a3562aa0b991 11 months ago 105MB
beginor/gitlab-ce 11.0.1-ce.0 e76a6ec6e22e 22 months ago 1.61GB
[root@/]# dockre rmi 53fcd00e9d93
-bash: dockre: command not found
[root@/]# docker rmi 53fcd00e9d93
Untagged: cains-eureka-2.0.1.jar:latest
Deleted: sha256:53fcd00e9d93dba9dd5bf84a38dfb837dc16cced9a1d1fc52806e5d3fb2d468a
Deleted: sha256:487be6e73af3ff429a03a9ba82bcc0dc33022ff23ba18fdfe683c071febc7022
Deleted: sha256:c246ad55259328e78acb991abb427824708832625aabf110c3265c7420a4c9c7
[root@/]# docker rmi d8dfb85ff350
Deleted: sha256:d8dfb85ff3503ea24ce132b8c2f7076f08eb59261125056c12fdaa43b091723a
Deleted: sha256:5506440bee2e24eb4e8795613f1774c951a13e05e1ce105bdcb4cc26eb472fd4
Deleted: sha256:2ef5833f74fd87e7e20e91c5f26a44ac9aac4495a5391adc37c2a41baf56239a
Deleted: sha256:a645b8538bd4785d017baaf8f8f5f458afb3fab54e3ae1b624e10ddd434ab89b
[root@/]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
jenkins/jenkins latest 59f8784e08ee 3 weeks ago 619MB
nginx latest 6678c7c2e56c 7 weeks ago 127MB
openjdk 8-jdk-alpine a3562aa0b991 11 months ago 105MB
beginor/gitlab-ce 11.0.1-ce.0 e76a6ec6e22e 22 months ago 1.61GB
[root@/]# cd /usr/local/
[root@local]# cd myJavaPro/
[root@myJavaPro]# ll
total 8
drwxr-xr-x 2 root root 54 Apr 24 02:51 20200424
-rw-r--r-- 1 root root 3104 Apr 22 02:01 cains-eureka-2.0.1.jar
-rw-r--r-- 1 root root 174 Apr 24 00:24 Dockerfile
[root@myJavaPro]# mkdir 202004241351
[root@myJavaPro]# cd 20200424
20200424/ 202004241351/
[root@myJavaPro]# cd 202004241351/
[root@202004241351]#
total 45324
-rw-r--r-- 1 root root 46405572 Apr 24 13:56 cains-eureka-2.0.1.jar
-rw-r--r-- 1 root root 187 Apr 24 13:57 Dockerfile
[root@202004241351]# docker build -t cains-eureka-2.0.1.jar . -f Dockerfile
Sending build context to Docker daemon 46.41MB
Step 1/5 : FROM openjdk:8-jdk-alpine
---> a3562aa0b991
Step 2/5 : VOLUME /tmp
---> Running in 29570002e647
Removing intermediate container 29570002e647
---> a06c2f2b686e
Step 3/5 : ADD cains-eureka-2.0.1.jar app.jar
---> 2cc899830b69
Step 4/5 : EXPOSE 8761
---> Running in e1258c956aa8
Removing intermediate container e1258c956aa8
---> 071a75d25589
Step 5/5 : ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
---> Running in 4f8efb733730
Removing intermediate container 4f8efb733730
---> 83bfc4c9f300
Successfully built 83bfc4c9f300
Successfully tagged cains-eureka-2.0.1.jar:latest
[root@202004241351]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
cains-eureka-2.0.1.jar latest 83bfc4c9f300 2 minutes ago 151MB
jenkins/jenkins latest 59f8784e08ee 3 weeks ago 619MB
nginx latest 6678c7c2e56c 7 weeks ago 127MB
openjdk 8-jdk-alpine a3562aa0b991 11 months ago 105MB
beginor/gitlab-ce 11.0.1-ce.0 e76a6ec6e22e 22 months ago 1.61GB
[root@202004241351]# docker run -d -p 8761:8761 cains-eureka-2.0.1.jar
b85a262d8675551e5977daa4a40fcd1675519cb7e2585a25d18eb5f3e68ef4c3
[root@202004241351]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b85a262d8675 cains-eureka-2.0.1.jar "sh -c 'java $JAVA_O…" 6 seconds ago Up 4 seconds 0.0.0.0:8761->8761/tcp boring_mestorf
ebb8efe1bb17 beginor/gitlab-ce:11.0.1-ce.0 "/assets/wrapper" 2 weeks ago Up 14 hours (healthy) 22/tcp, 0.0.0.0:8090->80/tcp, 0.0.0.0:8443->443/tcp gitlab
5cae6015b7e3 jenkins/jenkins "/sbin/tini -- /usr/…" 3 weeks ago Up 11 hours 0.0.0.0:50000->50000/tcp, 0.0.0.0:8081->8080/tcp jenkins
b85d190fc297 nginx "nginx -g 'daemon of…" 3 weeks ago Exited (255) 14 hours ago 0.0.0.0:8765->80/tcp docker-nginx0331
[root@202004241351]# docker start b85a262d8675
b85a262d8675
[root@202004241351]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b85a262d8675 cains-eureka-2.0.1.jar "sh -c 'java $JAVA_O…" 28 seconds ago Up 25 seconds 0.0.0.0:8761->8761/tcp boring_mestorf
ebb8efe1bb17 beginor/gitlab-ce:11.0.1-ce.0 "/assets/wrapper" 2 weeks ago Up 14 hours (healthy) 22/tcp, 0.0.0.0:8090->80/tcp, 0.0.0.0:8443->443/tcp gitlab
5cae6015b7e3 jenkins/jenkins "/sbin/tini -- /usr/…" 3 weeks ago Up 11 hours 0.0.0.0:50000->50000/tcp, 0.0.0.0:8081->8080/tcp jenkins
b85d190fc297 nginx "nginx -g 'daemon of…" 3 weeks ago Exited (255) 14 hours ago 0.0.0.0:8765->80/tcp docker-nginx0331
[root@ 202004241351]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b85a262d8675 cains-eureka-2.0.1.jar "sh -c 'java $JAVA_O…" 3 minutes ago Up 3 minutes 0.0.0.0:8761->8761/tcp boring_mestorf
ebb8efe1bb17 beginor/gitlab-ce:11.0.1-ce.0 "/assets/wrapper" 2 weeks ago Up 14 hours (healthy) 22/tcp, 0.0.0.0:8090->80/tcp, 0.0.0.0:8443->443/tcp gitlab
5cae6015b7e3 jenkins/jenkins "/sbin/tini -- /usr/…" 3 weeks ago Up 11 hours 0.0.0.0:50000->50000/tcp, 0.0.0.0:8081->8080/tcp jenkins
b85d190fc297 nginx "nginx -g 'daemon of…" 3 weeks ago Exited (255) 14 hours ago 0.0.0.0:8765->80/tcp docker-nginx0331
[root@202004241351]# systemctl enable docker
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /usr/lib/systemd/system/docker.service.
[root@202004241351]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b85a262d8675 cains-eureka-2.0.1.jar "sh -c 'java $JAVA_O…" 7 hours ago Up 7 hours 0.0.0.0:8761->8761/tcp boring_mestorf
ebb8efe1bb17 beginor/gitlab-ce:11.0.1-ce.0 "/assets/wrapper" 2 weeks ago Up 21 hours (healthy) 22/tcp, 0.0.0.0:8090->80/tcp, 0.0.0.0:8443->443/tcp gitlab
5cae6015b7e3 jenkins/jenkins "/sbin/tini -- /usr/…" 3 weeks ago Up 18 hours 0.0.0.0:50000->50000/tcp, 0.0.0.0:8081->8080/tcp jenkins
b85d190fc297 nginx "nginx -g 'daemon of…" 3 weeks ago Exited (255) 21 hours ago 0.0.0.0:8765->80/tcp docker-nginx0331
启动完容器在阿里云开放8761服务器,还是访问不到,再到properties.yml看server.port是否一致
再次访问。