参考视频:https://www.bilibili.com/video/BV1gr4y1U7CY
docker run hello-world 运行一个容器,没有就下拉一个运行
启动类
systemctl start docker
systemctl stop docker
systemctl restart docker
镜像类
docker images 列出本地主机上的(镜像)
docker search redis 查找远程库的镜像
docker pull redis:6.0.8 下拉远程库的镜像,指定版本号
docker pull redis 下拉远程库的镜像
docker rmi efas1 删除镜像ID
容器类
docker run ubuntu 运行ubuntu(个锤子)
–name 给容器命名
-d 后台运行容器并返回容器id
-i 以交互式运行,通常和-t同时使用
-t 为容器分配一个伪输入终端,通常与-y同时使用
-P 随机端口映射
-p 指定端口映射 -p 8001:8080 左边:宿主机 右边:docker内端口
浏览器输入的8080
/bin/bash 在容器中执行/bin/bash命令
docker run -it ubuntu /bin/bash
docker ps 列出本地主机上的(容器)
-a 列出当前正在运行的容器+历史上运行过的
-l 显示最近创建的容器
-n 显示最近n个创建的容器
docker ps -n 3 显示最近3个创建的容器
退出
exit run进去容器,exit退出,容器停止
ctrl+p+q run进去容器,ctrl+p+q退出,容器不停止
docker start eafd
docker stop eafd
docker restart eafd
docker kill asdf 强制停止
docker rm afdf 删除容器ID
docker run -d redis:6.0.8 守护式容器
redis放在后台守护就行了,不用放在前台交互
进入容器
docker exec -it asdf /bin/bash
重新进入
docker attach asdf
(attach直接进入容器启动命令的终端,不会启动新的进程,用exit退出容器会停止,
exec是容器中打开新的终端,并且可以启动新的进程,用exit退出不会停止)
容器文件->主机
docker cp deef:/tmp/a.txt /root/
容器->主机(默认到当前路径)
docker export deef > abcd.tar
文件->容器
docker cat abcd.tar | docker import -ybd/ubuntu1:3.7
镜像用户/镜像名/镜像版本号
具体应用配置例如redis见视频
其他
netstat -tunlp | grep 查看端口