docker 常用命令

1.在centos上,提示
permission denied
docker: Error response from daemon: Container command could not be invoked.
可以用下面的命令给docker文件权限

# chcon -t docker_exec_t /usr/bin/docker*
# service docker restart

yum install docker-io # 安装docker

配置文件 /etc/sysconfig/docker

chkconfig docker on # 加入开机启动
service docker start # 启动docker服务

基本信息查看

docker version # 查看docker的版本号,包括客户端、服务端、依赖的Go等
docker info # 查看系统(docker)层面信息,包括管理的images, containers数等
docker pull centos 下载
docker images [ centos ] 查看
docker run -i -t centos /bin/bash

搜索镜像

docker search <image> # 在docker index中搜索image

下载镜像

docker pull <image> # 从docker registry server 中下拉image

查看镜像

docker images: # 列出images
docker images -a # 列出所有的images(包含历史)
docker rmi  <image ID>: # 删除一个或多个image

使用镜像创建容器

docker run -i -t sauloal/ubuntu14.04
docker run -i -t sauloal/ubuntu14.04 /bin/bash # 创建一个容器,让其中运行
bash 应用,退出后容器关闭

查看容器

docker ps :列出当前所有正在运行的container
docker ps -l :列出最近一次启动的container
docker ps -a :列出所有的container(包含历史,即运行过的container)
docker ps -q :列出最近一次运行的container ID

再次启动容器

docker start/stop/restart <container> #:开启/停止/重启container
docker start [container_id] #:再次运行某个container (包括历史container)
docker attach [container_id] #:连接一个正在运行的container实例(即实例须   
         为start状态,可以多个窗口同时attach 一个container实例)
docker start -i <container> #:启动一个container并进入交互模式(相当于先
     start,在attach)
docker run -i -t <image> /bin/bash #:使用image创建container并进入交互模
         式, login shell是/bin/bash
docker run -i -t -p <host_port:contain_port> #:映射 HOST 端口到容器,方便
      外部访问容器内服务,host_port 可以省略,省略表示把 container_port 映射到
      一个动态端口。
#注:使用start是启动已经创建过得container,使用run则通过image开启一个新的
      container。

删除容器

docker rm <container...> #:删除一个或多个container
docker stop $(docker ps -a -q) #:停止所有的container
docker rm $(docker ps -a -q) #:删除所有的container
docker ps -a -q | xargs docker rm #:同上, 删除所有的container

简介

默认安装完 Docker 后,每次执行 docker 都需要运行 sudo 命令,如果不跟 sudo,直接执行docker images
命令会有如下问题:

FATA[0000] Get http:///var/run/docker.sock/v1.18/images/json: dial
unix /var/run/docker.sock: permission denied. Are you trying to connect
to a TLS-enabled daemon without TLS?

于是考虑如何免 sudo 使用 docker,只要把用户加入 docker 用户组即可,具体用法如下。

如果还没有 docker group 就添加一个:

sudo groupadd docker

将用户加入该 group 内。然后退出并重新登录就生效啦。

sudo gpasswd -a ${USER} docker

重启 docker 服务

sudo service docker restart

切换当前会话到新 group 或者重启 X 会话

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、Docker 简介 Docker 两个主要部件:Docker: 开源的容器虚拟化平台Docker Hub: 用...
    R_X阅读 4,411评论 0 27
  • 一、docker常用命令 docker容器生命周期管理 docker run 在一个新的容器执行一个命令 dock...
    淹死的鱼_hz阅读 12,143评论 0 5
  • Docker对比传统虚拟机总结 镜像: 1.查看当前机器上的镜像:docker images2.删除镜像:dock...
    克尔奇阅读 301评论 0 0
  • 操作系统检查 cat /etc/issueuname -r 安装docker #安装sudo yum instal...
    allin2阅读 240评论 0 0
  • 还记得以前在印象笔记里记了句话: 宁为丑男,但绝不能当宅男。宅男有可能交得到女朋友吗?有可能从事令自己满意的工作吗...
    alabiubiubiu阅读 140评论 0 1