容器操作
7.启动容器:docker run --name 自定义容器名字 -d(后台运行) 容器名字:tag -p本地端口:容器内部的端口
eg:docker run --name mytomcat -d tomcat:latest -p8080:8080
8.docker ps :查看运行中的容器
9.docker ps -a:查看所有容器
10.停止/启动容器:docker stop/start 容器id/容器自定义名字
11.删除容器:docker rm 容器id
12.查看容器日志:docker logs 容器id/容器名字
13.启动mysql:docker run --name mysql02 -d -p3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:8.0 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --lower_case_table_names=1(不区分表名大小写)
提交容器
docker commit -m="has update" -a="runoob" e218edb10161 runoob/ubuntu:v2
流程:
1.安装好docker
2.获取想要的镜像
3.拉取想要的容器
4.启动容器
问题:
1.安装好tomcat之后,端口也开放了,映射也做好了,但是在网页上就是访问不到tomcat主页。
原因:
tomcat中的webapps的东西都放在了webapps.list中去了。
这是docker中的tomcat的文件夹
root@7872b90e9373:/usr/local/tomcat# ls -l
total 124
-rw-r--r--. 1 root root 18982 Jun 30 20:14 BUILDING.txt
-rw-r--r--. 1 root root 5409 Jun 30 20:14 CONTRIBUTING.md
-rw-r--r--. 1 root root 57092 Jun 30 20:14 LICENSE
-rw-r--r--. 1 root root 2333 Jun 30 20:14 NOTICE
-rw-r--r--. 1 root root 3255 Jun 30 20:14 README.md
-rw-r--r--. 1 root root 6898 Jun 30 20:14 RELEASE-NOTES
-rw-r--r--. 1 root root 16262 Jun 30 20:14 RUNNING.txt
drwxr-xr-x. 2 root root 4096 Jul 6 21:28 bin
drwxr-xr-x. 1 root root 22 Jul 10 12:49 conf
drwxr-xr-x. 2 root root 4096 Jul 6 21:27 lib
drwxrwxrwx. 1 root root 177 Jul 10 12:49 logs
drwxr-xr-x. 2 root root 134 Jul 6 21:28 native-jni-lib
drwxrwxrwx. 2 root root 30 Jul 6 21:27 temp
drwxr-xr-x. 2 root root 6 Jul 6 21:27 webapps
drwxr-xr-x. 7 root root 81 Jun 30 20:12 webapps.dist
drwxrwxrwx. 2 root root 6 Jun 30 20:09 work
默认的webapps下是没有文件的,全部的东西都放在了webapps.dist文件夹中。解决办法也很简单,把webapps.dist改名成webapps就行了。
解决办法:
# 进入tomcat的bash文件
docker exec -it 你的tomcatId /bin/bash
# 查看文件内容
ls -l
# 修改webapps名字为webapps2
mv webapps webapps2
# 将webapps.dist名字修改为webapps
mv webapps.dist webapps
# 退出
exit
进入tomcat容器:
[root@localhost mr]# sudo docker exec -it tomcat对应的id bash
root@df32d1aa345c:/usr/local/tomcat# pwd
/usr/local/tomcat
docker传文件到容器内部:
docker cp 外部文件路径 容器名:内部路径
linux中修改名字:
mv 原名 新名
开启端口:
firewall-cmd --zone=public --add-port=80/tcp --permanent