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    导入快照

 

posted @   seven1986  阅读(73)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示