目录
1.构建镜像
1.1. 制作Dockerfile文件
参考示例如下:
FROM ascdc/jdk8
MAINTAINER huachun
EXPOSE 9527
COPY ./delivery-0.0.1-SNAPSHOT.jar /data
ADD delivery-0.0.1-SNAPSHOT.jar delivery-0.0.1-SNAPSHOT.jar
ENTRYPOINT ["java","-jar","delivery-0.0.1-SNAPSHOT.jar"]
ENV TZ=Asia/Shanghai
参考:docker安装与服务搭建Linux服务器Centos版本_hauchun的博客-优快云博客
1.2. 构建镜像
docker build -t springboot-delivery .
构建镜像常见问题可参考:docker常见问题_hauchun的博客-优快云博客
2.运行镜像
docker run -p 9527:9527 -d --name springboot-delivery-9527 springboot-delivery
参数说明:
--name: 容器名
-d:在后台运行
-p:宿主机端口和容器端口
最后面的是镜像名
运行多个镜像:
docker run -e TZ="Asia/Shanghai" -v /data/docker/logs/:/script/logs -p 9526:9527 -d --name springboot-delivery-9526 springboot-delivery
docker run -e TZ="Asia/Shanghai" -v /data/docker/logs/:/script/logs -p 9527:9527 -d --name springboot-delivery-9527 springboot-delivery
docker run -e TZ="Asia/Shanghai" -v /data/docker/logs/:/script/logs -p 9528:9527 -d --name springboot-delivery-9528 springboot-delivery
-e:指定时区参数
-v: 将容器日志挂在到宿主机指定目录,防止容器被删除找不到日志问题
3.查看停止的容器ID
[root@iZuf67laxwwwzwi68yh2kdZ springboot-service]# docker ps -aq
0e48dc6dd857
4.查看容器
4.1查看容器列表
[root@iZuf67jei1pul0y776l9yjZ springboot-service]# docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1cb515247769 springboot-delivery "java -jar delivery-…" About a minute ago Up About a minute 0.0.0.0:9528->9527/tcp springboot-delivery-9528
0496439b1d09 springboot-delivery "java -jar delivery-…" About a minute ago Up About a minute 0.0.0.0:9527->9527/tcp springboot-delivery-9527
454d39a26dd9 springboot-delivery "java -jar delivery-…" 6 minutes ago Up 6 minutes 0.0.0.0:9526->9527/tcp springboot-delivery-9526
4.2查看容器日志
有新的日志生成会实时刷新出来
# container_id 容器ID
docker logs -f --tail 10 container_id
docker logs -f --tail container_id
只是打印出来最新的10行日志
# container_id 容器ID
docker logs --tail 10 container_id
docker logs container_id | tail -n 10
打印最早期的10行日志
# container_id 容器ID
docker logs container_id| head -n 10
想要在docker日志里查找关键字
# container_id 容器ID
docker logs container_id| grep ERROR
只想找最新的两行的ERROR日志
# container_id 容器ID
docker logs container_id| grep ERROR | tail -n 2
5.架构图
docker集群 
因为使用了阿里云的SLB,所以还需要在负载均衡配置多个不同端口的资源组
6.配置域名转发策略
阿里云工作台搜索 SLB负载均衡 -> 传统型负载均衡 实例管理 -> 点击实例ID -> 虚拟服务组
因为我只有三台可以用的机器,所以将三台机器的多个端口映射到不同容器后端端口
同样找到配置转发策略将域名与虚拟服务绑定,如果域名有盖顶或者是新添加的,记得要匹配扩展域名
持续更新中...
欢迎优快云的小伙伴和我交流,共同探讨更多的使用技巧