- 外网 IP:39.96.45.160
- 内网 IP:192.168.1.101
安装 Docker
## ① 使用 DaoCloud 的 Docker 高速安装脚本。参考 https://get.daocloud.io/#install-docker
curl -sSL https://get.daocloud.io/docker | sh
## ② 设置 DaoCloud 的 Docker 镜像中心,加速镜像的下载速度。参考 https://www.daocloud.io/mirror
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io
## ③ 启动 Docker 服务
systemctl start docker
1、启动服务 systemctl start 服务名
2、停止服务 systemctl stop 服务名
3、重启服务 systemctl restart 服务名
4、查看服务是否已启动 systemctl is-active 服务名
5、查看服务的状态 systemctl status 服务名
6、启用开机自启动服务 systemctl enable 服务名
7、停用开机自启动服务 systemctl disable 服务名
8、查看服务是否为开机自启动 systemctl is-enabled 服务名
9、只重启正在运行中的服务 systemctl try-restart 服务名
10、显示所有的服务状态—空格翻页 q推出 systemctl list-units --type service --all
11、查看启动成功的服务列表 systemctl list-unit-files|grep enabled
12、查看启动失败的服务列表 systemctl --failed
13、查看所有服务的状态—空格翻页 q推出 systemctl list-unit-files --type service
删除docker(get.daocloud.io/#install-do…
# 最终要删除该目录
rm -fr /var/lib/docker/
服务部署:
在 Linux 服务器上创建 /root/nice/helloword
上传jar包。打包:mvn clean package -Dmaven.test.skip=true(跳过单元测试的执行)
/root/nice/helloword目录下,新建 Dockerfile 文件,用于制作后端项目的 Docker 镜像。
FROM openjdk:8-jre
## 创建目录,并使用它作为工作目录
RUN mkdir -p /nice-server
WORKDIR /nice-server
## 将后端项目的 Jar 文件,复制到镜像中
COPY nice-server-1.0.0.jar nice-server.jar
ADD bootstrap/target/nice-server-1.0.0.jar /nice-server/nice-server.jar
## 暴露后端项目的 8088 端口
EXPOSE 8088
## 设置 TZ 时区
## 设置 JAVA_OPTS 环境变量,可通过 docker run -e "JAVA_OPTS=" 进行覆盖
ENV TZ=Asia/Shanghai JAVA_OPTS="-Xms512m -Xmx1024m"
## 启动后端项目
ENTRYPOINT java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar nice-server.jar
## 如果在dockerfile里出现多个CMD,只有最后一个CMD会生效(https://blog.csdn.net/xyz/article/details/118269856)
CMD ["java", "-jar", "-Duser.timezone=Asia/ShangHai", "-Xms512M", "-Xmx1024M", "bootstrap.jar"]
执行如下命令,构建名字为 nice-server 的 Docker 镜像。
cd /root/nice/helloword
使用当前目录的 Dockerfile 创建镜像,标签为 runoob/ubuntu:v1。
docker build -t nice-server .
在 /root/nice/helloword 目录下,新建 Shell 脚本 deploy.sh,使用 Docker 启动后端项目。
脚本:
#!/bin/bash
set -e
## 第一步:删除可能启动的老 nice-server 容器
echo "开始删除 nice-server 容器"
docker stop nice-server || true
docker rm nice-server || true
echo "完成删除 nice-server 容器"
## 第二步:启动新的 nice-server 容器 \
echo "开始启动 nice-server 容器"
docker run -d \
--name nice-server \
-p 8088:8088 \
-e "SPRING_PROFILES_ACTIVE=dev" \
-v /root/nice/nice-server:/root/logs/ \
nice-server
echo "正在启动 nice-server 容器中,需要等待 60 秒左右"
应用日志文件,挂载到服务器的的 `/root/nice/nice-server` 目录下
通过 `SPRING_PROFILES_ACTIVE` 设置为 `dev` 开发环境
执行 docker logs nice-server 命令,查看启动日志。看到如下内容,说明启动完成
使用 docker logs nice-server | grep 8088