docker基本命令
docker运行状态
systemctl start docker
systemctl status docker
docker version
[root@localhost ~]# systemctl stop docker #有些进程会使docker.socker 处于连接状态,需断开这个连接,然后再关闭docker。
Warning: Stopping docker.service, but it can still be activated by:
docker.socket
[root@localhost ~]# sudo systemctl stop docker.socket #断开这个连接
docker ps -a
docker images
docker inspect livetranscoder | grep IPAddress -A 20 #容器信息,并grep出目标以下20行
拉取镜像
# docker pull alpine #从镜像仓库中拉取或者更新指定镜像
run
-i: 交互式操作。
-t: 终端。
alpine: alpine镜像。
/bin/sh:放在镜像名后的是命令
docker run -i -t alpine /bin/sh #运行 exit #退出
docker start 容器名/ID
前后台运行
#前台运行
[root@localhost ~]# docker run -it --name web -p 8888:80 nginx
#后台运行
[root@localhost ~]# docker run -d --name web-8888 -p 8888:80 nginx
75d3c6aae3c28cca7fc9307a9a84a84223358c28408d362d091539cae5cf1377
运行时访问容器
docker exec -it ms-server /bin/sh #方法1 docker attach 镜像名称 #方法2
eg.
docker exec -it user /bin/bash 进入edge-user容器
cd /usr/local/openresty/nginx/ #容日的nginx目录
停止/启用/删除容器
docker stop web-8888 #停止单个容器
docker run web-8888
docker rm web-8888 #删除单个容器,运行时的docker不让删除,需要先stop掉。
docker container prune #删除所有停止的容器
docker start $(docker ps -a | awk '{ print $1}' | tail -n +2) #启动所有容器
docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2) #停止所有容器
docker rm $(docker ps -a | awk '{ print $1}' | tail -n +2) #删除所有容器
docker rmi $(docker images | awk '{print $3}' |tail -n +2) #删除所有镜像
docker文件系统
--rm 容器运行完毕后会自行删除
-v linux目录:docker目录 将本地目录绑定到了容器的/builds目录下
-w 将当前工作目录设置到/builds
[root@localhost ~]# docker run --rm -v $PWD/hello:/builds -w /builds golang /bin/bash -c "go build main.go" [root@localhost hello]# ls main main.go #在linux系统目录下编译出main可执行文件
日志:
docker logs web-8888 查看日志
导出导入镜像
docker save -o metersphere.tar metersphere:v12.0 (不改名镜像名称和tag) docker load -i metersphere.tar
导出导入容器快照
docker export ms-server> ms-server.tar 导出快照 cat ms-server.tar | sudo docker import - ms-server:v12.0 导入快照
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库