docker免sudo及常用操作

小编 2026-06-04 阅读:230 评论:0
每次使用docker命令时都需要在前面加上sudo并输入密码,我们可以用下面的方法免sudo使用Docker: 如果还没有 docker group 就添加一个: sudo groupadd dock...

每次使用docker命令时都需要在前面加上sudo并输入密码,我们可以用下面的方法免sudo使用Docker:

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

sudo groupadd docker

ubuntu下,通过一下命令来看有没有group

cat /ect/group

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

sudo gpasswd -a ${USER} docker

重启 docker 服务

sudo service docker restart

group 或者重启 X 会话

newgrp - docker
或者
pkill X

注意,最后一步是必须的,否则因为 groups 命令获取到的是缓存的组信息,刚添加的组信息未能生效,所以 docker images 执行时同样有错。

 

 

使用docker create [image-name] 创建一个容器

创建一个nginx镜像的容器,由于没有指定各项参数,容器实用默认参数,创建后并不会启动,并将容器的ID输出到终端,如果本地没有镜像,将从网络下载镜像。

docker create nginx

使用docker run [image-name] 创建一个容器并运行该容器

创建一个nginx镜像的容器,由于没有指定各项参数,容器实用默认参数,创建并启动运行,并将容器的ID输出到终端,如果本地没有镜像,将从网络下载镜像。但是请使用-d 参数,让容器运行在后台,不然该终端将会被占用无法使用

docker run -d nginx

实用docker ps -a 命令查看当前docker创建的容器,并显示运行状态

docker ps -a

获取Docker容器名称

docker ps --format \"{{.Names}}\"

启动一个创建好的或者被停止的容器

启动容器  docker start [container id] 

停止、启动、杀死、重启一个容器

docker stop [container id] 
docker start [container id] 
docker kill [container id] 
docker restart [container id] 

删除容器

docker rm [container id] 

删除全部容器:docker rm $(docker ps -a -q)

删除镜像

docker rmi [image id]

删除全部镜像 :docker rmi $(docker images -q)

创建容器的参数

OPTIONS 说明
-a stdin 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项
-d 后台运行容器,并返回容器ID
-i 以交互模式运行容器,通常与 -t 同时使用
-t 为容器重新分配一个伪输入终端,通常与 -i 同时使用
--name=\"nginx-lb\" 为容器指定一个名称
--dns 8.8.8.8 指定容器使用的DNS服务器,默认和宿主一致
--dns-search example.com 指定容器DNS搜索域名,默认和宿主一致
-h \"mars\" 指定容器的hostname
-e username=\"ritchie\" 设置环境变量
--env-file=[] 从指定文件读入环境变量
--cpuset=\"0-2\" or --cpuset=\"0,1,2\" 绑定容器到指定CPU运行
-m 设置容器使用内存最大值
--net=\"bridge\" 指定容器的网络连接类型,支持 bridge/host/None/container: 四种类型
--link=[] 添加链接到另一个容器
--expose=[] 开放一个端口或一组端口

-it

-it 参数一般连用,在docker run 启动一个容器后提供一个容器的终端,如果容器中没开启shell进程,也无法对容器进行交互

docker run -it centos

退出容器请使用CTRL + D ;CTRL + C 只会发送给容器的shell,不会退出容器

--name=\"container name\"

--name 将会为容器指定一个名称,没有这个参数,容器的名称将由系统分配

docker create --name=\"centos-1\" centos

-p

-p 参数将一个docker主机的端口映射到容器中

-v 挂载数据卷

将本地文件/root/pan1/pan.txt 挂载到容器/etc/resolv.conf

docker run -d --name web-1 -v /root/pan1/pan.txt:/etc/resolv.conf nginx

将本地目录/root/pan1挂载到容器/etc/pan1 下

docker run -d --name web-2 -v /root/pan1:/etc/pan1 nginx

创建一个数据卷,数据卷不会随着容器被删除而被删除

docker create -v /shiyanloudata --name shiyan -it centos

数据卷可以被多个容器共享,容器挂载其他容器的数据卷

docker run --volumes-from shiyan --name web12345 -d nginx

查看容器的信息

docker inspect [OPTIONS] NAME|ID [NAME|ID...]

查看指定的信息使用-f参数:

  1. [root@docker ~]# docker inspect -f {{.LogPath}} web12345

版权声明

本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。

热门文章
  • 机房智能化温湿度解决方式之POE供电以太网温湿度传感器

    机房智能化温湿度解决方式之POE供电以太网温湿度传感器
    机房智能化温湿度解决方式之POE供电以太网温湿度传感器 北京盈创力和电子科技有限公司 智能型TCP网口温湿度记录仪 北京IP网络温湿度记录仪厂家,北京盈创力和 北京智能型TCP网口温湿度记录仪IP网络温湿度记录仪是一种新型的基于TCP/IP协议双绞线以太网标准温湿度采集模块,利用它可以实现现场温度值、相对湿度值的采集,同时利用其自身的RJ45通信接口可以方便地和机房监控主机或交换机集线器进行联网。 工作于-40℃~85℃工业级带...
  • Sequential Monte Carlo Methods (SMC) 序列蒙特卡洛/粒子滤波/Bootstrap Filtering

    Sequential Monte Carlo Methods (SMC) 序列蒙特卡洛/粒子滤波/Bootstrap Filtering
    Problem Statement 我们考虑一个具有马尔可夫性质、非线性、非高斯的状态空间模型(State Space Model):对于一个时间序列上的观测结果{yt,t∈N}\\{ y_t , t \\in N \\}{yt​,t∈N},我们认为每个观测结果yty_tyt​的生成依赖于一个无法直接观察的隐变量xt∈{xt,t∈N}x_t \\in \\{x_t , t \\in N \\}xt​∈{xt​,t∈N},即:p(...
  • HTTP状态保持的原理

    HTTP状态保持的原理
    a)在用户登录之后,浏览器返回响应的时候会在响应中添加上cookieb)浏览器接收到cookie之后会自动保存c)当用户再次请求同一服务器中的其他网页的时候,浏览器会自动带上之前保存的cookied)服务接收到请求之后可以请 request 对象中取到cookie 判断当前用户是否登录  Http是无状态的,就是连接时数据互通,关闭后...
  • Hive 系统函数及示例

    Hive 系统函数及示例
    查看所有系统函数 show functions; 函数分类 内置函数【系统函数】 数学函数: floor、round、ceil、cos、log2等 字符串函数: length、reverse、trim、lower、get_json_object、repeat等 收集函数: size 转换函数: cast 日期函数: year、month、datediff、date、date_add等 条件函数: coalesce、case…w...
  • CSRF的原理和防范措施

    CSRF的原理和防范措施
    a)攻击原理:i.用户C访问正常网站A时进行登录,浏览器保存A的cookieii.用户C再访问攻击网站B,网站B上有某个隐藏的链接或者图片标签会自动请求网站A的URL地址,例如表单提交,传指定的参数iii.而攻击网站B在访问网站A的时候,浏览器会自动带上网站A的cookieiv.所以网站A在接收到请求之后可判断当前用户是登录状态,所以...
标签列表