初次使用docker, 多有不足,这里把坑一点点的记下来
概念篇
docker 是什么? 太多文字不同,书读的少, 不懂大大道理; 在我的理解, 它就是个沙箱环境; 在linux中 ,独立进程, 有着自己的小世界
使用篇
安装docker 及运行
docker search tomcat
docker pull tomcat8
docker run -it -p 8084:8080 -v $PWD:/usr/local/tomcat/webapps --name wu_tomcat6 tomcat
-it # 是-i 和 -t的简写, 表示以交互式的方式运行容器,加上-d表示后台运行,这里为了截图输出启动日志我用了-it,也可以用-d,再用"docker logs 容器名"命令输出日志 --rm #当容器被停止时自动删除容器
-p 8084:8080 #80是为容器中的tomcat设置的端口, 这里表示将80映射到宿主机8888端口, 如果只写-p 80 容器会随机取值32768~61000中较大的端口号来映射到80端口上
-v # 将tomcat中的usr/local/tomcat/webapps目录映射到宿主机当前目录,后面更新jar包宿主机目录中即可
tomcat # 镜像名:tag标签
小小命令, 其中有太多过程;
1.宿主机: 就是主服务器, 安装docker的服务器
通常运行了一个docker容器时, 容器读取文件都是在其容器自身小世界读取的, 如何都取主机目录, 则需要映射:
-v 命令
挂载命令 : 在某个镜像下,挂载宿主当前目录为容器中的某个目录
docker run -it -v $PWD:/usr/local/tomcat/webapps 镜像名 /bin/bash
进入容器命令
docker exec -it 容器名 /bin/bash
记住, 容器如果停止了, 是进入不了容器里面的;
但比如, tomcat容器启动不了, 原因是配置文件出错, 那如何进入修改呢;
有人就很聪明了, 将容器内文件复制到主机里, 修复配置文件后, 在覆盖容器里面的文件, 涉及命令是
docker cp wu_tomcat6:/usr/local/tomcat /usr/local/temp
如上: cp 容器名:容器文件目录 主机目录
1. 创建并运行 一个容器
docker run -it --rm centos:latest bash
run 运行容器
-it 以交互方式运行容器
--rm 退出容器后删除容器
centos:latest 基于 镜像启动容器
bash 命令 交互式shell
2. 退出容器
exit
3. 查看容器
docker ps 查看正在运行的容器
docker ps -a 查看所有容器
4.删除容器
docker rm [容器id ]
5 . 查看 镜像 容器 数据卷 占用空间
docker system df
6 . 进入 容器
docker exec -it [容器id] bash 以交互方式进去容器 (新打开一个控制台 操作)
7 。启动 停止 重启容器
dcoker start [容器id/容器名]
dcoker stop [容器id/容器名]
dcoker restart [容器id/容器名]
8. 删除容器
docker container rm
清理所有终止的容器
docker container prune