一、安装docker(Centos 8)
# 需使用root用户,或sudo
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
注意:在CentOS 8中,使用yum时出现错误,镜像列表中没有url,如下:
Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist
此问题网上解决方案不少,经亲测,以下两篇可完美解决:
-
问题表现及原因:CentOS 8: No URLs in mirrorlist error_xiaocao_debug的博客-CSDN博客
-
最新解决方案:CentOS 8: yum设置为阿里源_xiaocao_debug的博客-CSDN博客_centos8 阿里源
感谢原创!
docker安装过程如下:
二、修改docker源为阿里源
参考:Docker更改镜像源_king_weng的博客-CSDN博客_修改docker镜像源(感谢原创!)
修改过程如下:
修改好docker源后,执行以下命令启动docker,过程见上图:
# 重新加载配置文件
systemctl daemon-reload
# 使用systemctl启动docker
systemctl restart docker
# 检查启动是否成功(能正常执行docker ps命令说明启动成功)
docker ps
至此,docker本身安装及修改源的工作已经完成,接下来,可开始安装其他应用系统。
三、安装tomcat
-
查找是否存在tomcat这个包
docker search tomcat
-
安装指定版本
docker pull tomcat:9.0.59 (可先到官网确认版本)
-
安装最新版本
docker pull tomcat
-
安装完成后,可通过docker images或docker image ls命令查看镜像:
安装过程:
四、启动 tomcat 容器
# 首次启动,使用run命令生成并启动一个容器,若是启动一个已存在的容器,应使用start命令,见后文
docker run -d --name mytomcat -p 8888:8080 tomcat:9.0.59
参数说明:
-
-d:后台启动
-
--name 起别名(两个-)
-
8888:8080, 前者8080指宿主机器端口,后者8888指docker tomcat容器端口
-
tomcat:9.0.59:指定镜像(image)的版本,在有多个tomcat时,必须指定
五、查看已启动的容器
启动后,也可使用以下命令查看已启动的容器:
docker ps
启动后,我们访问8888就可以访问到对应的docker容器(Container)里的8080的tomcat了,如:http://192.168.1.145:18889
注:若报404,可登录容器,查看webapp目录是否为空,tomcat9及之后的webapp目录默认为空,内容放在webapp.dist目录,将disp目录中内容copy到webapp目录可解决404问题。
六、登录容器
docker exec -it 74403884b2ac /bin/bash
容器启动后才能登录容器:
登录容器后,容器就相当于一台linux机,可查看java版本和系统版本:
执行exit命令可退出容器。
七、停止容器
docker stop 容器ID
八、再次启动容器
-
查看已run过的容器
docker ps -a
-
使用start命令启动
docker start 容器名或容器ID
注意,docker中run和start有如下区别:
-
docker run 后面指定的是一个镜像
-
而docker start指定的是一个容器
-
docker run是利用镜像生成容器,并启动容器,而docker start是启动一个之前生成过的容器
-
本篇结束,欢迎指正。
下一篇将对docker部署web应用进行总结,敬请期待。