docker命令分类
Docker环境信息
— docker [info|version]
容器生命周期管理
— docker [create|exec|run|start|stop|restart|kill|rm|pause|unpause]
容器操作管理
— docker [ps|inspect|top|attach|wait|export|port|rename|stat]
容器rootfs命令
— docker [commit|cp|diff]
镜像仓库
— docker [login|pull|push|search]
本地镜像管理
— docker [build|images|rmi|tag|save|import|load]
容器资源管理
— docker [volume|network]
系统日志信息
— docker [events|history|logs]
Spring boot jar包打成docker镜像 准备工作
新建自定义镜像目录
mkdir -p /opt/work
将skywalkingdemo1.jar复制到/data/skywalking目录中
[root@studyMachine work]# cp -r /opt/server/apache-skywalking-8.7.0/agent ./
[root@studyMachine work]# ll
总用量 47428
drwxr-xr-x. 9 root root 176 2月 17 11:09 agent
-rw-r--r--. 1 root root 892 2月 17 10:58 Dockerfile
-rw-r--r--. 1 root root 48551845 2月 17 11:01 jiang-mall-user-1.0.1.jar
-rwxr-xr-x. 1 root root 1024 2月 14 10:09 startupJiang.sh
-rwxr-xr-x. 1 root root 485 2月 12 15:24 startup.sh
[root@studyMachine work]#
Dockerfile
FROM openjdk:8-alpine3.9
# 作者信息
MAINTAINER jiang Docker skywalking springboot "jiang@163.com"
RUN apk --update add curl bash tzdata && \
rm -rf /var/cache/apk/*
ENV TZ Asia/Shanghai
VOLUME /tmp
ARG JAR_FILE
COPY ${JAR_FILE} /app.jar
COPY agent/ /opt/skyagent
EXPOSE 8010
ENV JAVA_OPTS="-server -Xmx256m -Xms256m" AGENT_SERVICE_NAME="jiang-mall-user" AGENT_COLLETOR_ADDRESS="192.168.66.132:11800"
ENTRYPOINT java -javaagent:/opt/skyagent/skywalking-agent.jar=agent.service_name=${AGENT_SERVICE_NAME},collector.backend_service=${AGENT_COLLETOR_ADDRESS} ${JAVA_OPTS} -jar /app.jar
制作镜像
docker build --rm -t jiang/jiang-mall-user:1.0 --build-arg JAR_FILE=jiang-mall-user-1.0.1.jar .
[root@studyMachine work]# docker build --rm -t jiang/jiang-mall-user:1.0 --build-arg JAR_FILE=jiang-mall-user-1.0.1.jar .
Sending build context to Docker daemon 82MB
Step 1/11 : FROM openjdk:8-alpine3.9
---> a3562aa0b991
Step 2/11 : MAINTAINER jiang Docker skywalking springboot "jiang@163.com"
---> Using cache
---> ed32b4385bfb
Step 3/11 : RUN apk --update add curl bash tzdata && rm -rf /var/cache/apk/*
---> Running in 3fa45fc9f65d
fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/community/x86_64/APKINDEX.tar.gz
(1/10) Installing ncurses-terminfo-base (6.1_p20190105-r0)
(2/10) Installing ncurses-terminfo (6.1_p20190105-r0)
(3/10) Installing ncurses-libs (6.1_p20190105-r0)
(4/10) Installing readline (7.0.003-r1)
(5/10) Installing bash (4.4.19-r1)
Executing bash-4.4.19-r1.post-install
(6/10) Installing nghttp2-libs (1.35.1-r2)
(7/10) Installing libssh2 (1.9.0-r1)
(8/10) Installing libcurl (7.64.0-r5)
(9/10) Installing curl (7.64.0-r5)
(10/10) Installing tzdata (2020c-r1)
Executing busybox-1.29.3-r10.trigger
OK: 117 MiB in 64 packages
Removing intermediate container 3fa45fc9f65d
---> 6c2e8ec90ce4
Step 4/11 : ENV TZ Asia/Shanghai
---> Running in 529b266f60dd
Removing intermediate container 529b266f60dd
---> c07c356ff1b4
Step 5/11 : VOLUME /tmp
---> Running in df7fa03cd03e
Removing intermediate container df7fa03cd03e
---> a2bede4c64f0
Step 6/11 : ARG JAR_FILE
---> Running in 0b507a645ab0
Removing intermediate container 0b507a645ab0
---> 2a97a40cd476
Step 7/11 : COPY ${JAR_FILE} /app.jar
---> d659ca9ac297
Step 8/11 : COPY agent/ /opt/skyagent
---> f8fdebcc8943
Step 9/11 : EXPOSE 8081
---> Running in 25a83681e49f
Removing intermediate container 25a83681e49f
---> e74540bcefb1
Step 10/11 : ENV JAVA_OPTS="-server -Xmx256m -Xms256m" AGENT_SERVICE_NAME="jiang-mall-user" AGENT_COLLETOR_ADDRESS="192.168.66.132:11800"
---> Running in 1054883417d2
Removing intermediate container 1054883417d2
---> ba09d8cb3b8c
Step 11/11 : ENTRYPOINT java -javaagent:/opt/skyagent/skywalking-agent.jar=agent.service_name=${AGENT_SERVICE_NAME},collector.backend_service=${AGENT_COLLETOR_ADDRESS} ${JAVA_OPTS} -jar /app.jar
---> Running in eb185e7513b8
Removing intermediate container eb185e7513b8
---> 3701b5ffb5ed
Successfully built 3701b5ffb5ed
Successfully tagged jiang/jiang-mall-user:1.0
[root@studyMachine work]#
运行镜像
docker run -itd --name jiang-mall-user01 -p 8010:8010 jiang/jiang-mall-user:1.0
测试项目
docker logs -f jiang-mall-user01
http://192.168.66.132:8010/user/list
docker stop jiang-mall-user01
docker rm jiang-mall-user01