背景
经常,我们在关停服务器的服务后,想再次启动服务,此时我们该学习哪些Docker部署命令呢?
接着看下去吧。
全部脚本
# 重启docker容器
systemctl stop docker
systemctl start docker
systemctl status docker
# 重启MySQL镜像服务
docker start mysql8.0
# 重启JDK镜像服务
docker start bbs
# 进入JDK服务启动项目并退出服务
docker exec -it bbs bash
cd /root/bbs
nohup java -jar -Dfile.encoding=utf-8 bbs.jar \
--spring.config.location=application.yml >> out.log 2>&1 &
exit
# 查看服务是否启动
netstat -anp | grep 80
netstat -anp | grep 3306
具体步骤
我们的思路首先是利用Xshell7连接服务器,启动Docker
启动Docker
systemctl stop docker
systemctl start docker
systemctl status docker
因为服务停止后,Docker也停止了,所以需要重启,不然会报错
接着我们就可以启动Docker里面之前安装的容器了
docker images
docker ps
docker ps -a
我们看到容器都还在,但是都没有启动,此时如果访问网站的话,会出现下面的错误
原因是服务端口80,443,3306等没有开放
,所以我们下一步就是启动服务,让服务器暴露端口
启动服务
先启动MySQL服务
docker start mysql8.0
docker ps
说明:容器名或者容器id都可以在上面的命令中找到
启动成功
这样MySQL就启动好了
我们现在验证下3306端口服务器是否为我们暴露了出来,通过Navicat链接数据库,的确是可以连上,并且数据都在
为什么数据库的数据库都还在呢?
这是因为我是通过之前在腾讯云服务器上创建的快照进行恢复
的,这样数据库的数据也会保存在快照里,恢复起来就会十分方便
接下来,我们就要启动JDK容器了,在这个容器里运行我们之前的SpringBoot项目
docker start bbs
docker ps
JDK容器也启动了,但是要注意此时bbs服务还没有启动,80端口还没有暴露
,需要进入容器继续执行命令,运行项目让服务器暴露80端口
进入Java容器
docker exec -it bbs bash
cd /root/bbs
nohup java -jar -Dfile.encoding=utf-8 bbs.jar \
--spring.config.location=application.yml >> out.log 2>&1 &
#退出并关闭容器
exit
验证
这样我们的部署在JDK里的bbs项目也启动起来了,我们最后再来验证
下80和3306端口是否开放了吧
netstat -anp | grep 80
netstat -anp | grep 3306
80和3306端口都已经开放,我们现在直接到浏览器验证下服务
浏览器输入域名验证也咩有问题了,本篇至此结束