Linux学习----docker使用

Posted BalaBala

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux学习----docker使用相关的知识,希望对你有一定的参考价值。

docker 使用

遇到的问题

错误:”Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.26/images/json: dial unix /var/run/docker.sock: connect: permission denied“

解决方案 一

docker守护进程启动的时候,会默认赋予名字为docker的用户组读写Unix socket的权限,因此只要创建docker用户组,并将当前用户加入到docker用户组中,那么当前用户就有权限访问Unix socket了,进而也就可以执行docker相关命令

解决方案 二

使用sudo获取管理员权限,运行docker命令

docker学习

修改镜像源:

  1. 直接设置 - registry-mirror参数,仅对当前的命令有效

    docker run hello-world --registry-mirror=https://docker.mirrors.ustc.edu.cn

  2. 支持systemctl的系统sudo systemctl edit docker.service

    生成etc/systemd/system/docker.service.d/override.conf覆盖默认的参数,在该文件中加入一下内容:

    `[Service]

    ExecStart=

    ExecStart=/usr/bin/docker -d -H fd:// --registry-mirror=https://docker.mirrors.ustc.edu.cn`

  3. 新版的docker推荐使用json配置文件

    若是默认安装则默认为/etc/docker/daemon.json,在该文件中加入以下内容:

    { 
    
    "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"] 
    
    }

    推荐镜像源

docker images 列出本地所有的images

docker 启动容器

docker run 参数 镜像名称:tag 执行命令

-i  保持和docker容器内的交互
-t 为当前容器分配一个客户端
-d 后台运行容器
--rm 当容器退出时自动移除这个容器
--name 为容器指定一个名称
-p hostPort:dockerPort将容器的端口发布到主机

docker 列出容器

docker ps [OPTIONS]

-a :显示所有的容器,包括未运行的。

-f :根据条件过滤显示的内容。

--format :指定返回值的模板文件。

-l :显示最近创建的容器。

-n :列出最近创建的n个容器。

--no-trunc :不截断输出。

-q :静默模式,只显示容器编号。

-s :显示总的文件大小。

docker 关闭容器

1、docker stop 此方式常常被翻译为优雅的停止容器

docker stop 容器ID或容器名 参数 -t:关闭容器的限时,如果超时未能关闭则用kill强制关闭,默认值10s,这个时间用于容器的自己保存状态 docker stop -t=60 容器ID或容器名

2、docker kill

docker kill 容器ID或容器名 :直接关闭容器

ps:stop和kill的主要区别:stop给与一定的关闭时间交由容器自己保存状态,kill直接关闭容器

docker 重启

docker restart 容器ID或容器名 不管容器是否启动,直接重启容器

docker进入容器

进入docker容器内部修改容器内容

ps进入容器之前需要先启动容器

docker exec -it 容器名 bash

exit 退出容器

宿主机与容器交互

在宿主机和容器之间相互copy文件

docker cp [option] LOCALPATH|- CONTAINER:PATH  // 宿主机复制到容器中  
docker cp [option] CONTAINER:PATH LOCALPATH   // 容器中复制到宿主机中

例子:
docker  cp  xxx.jpg tomcat-8000:/usr/local/tomcat/webapp/ROOT  
docker cp tomcat-8001:/usr/local/tomcat/webapp/ROOT/index.jsp /root

以上是关于Linux学习----docker使用的主要内容,如果未能解决你的问题,请参考以下文章

Docker删除报错:Error response from daemon: conflict: unable to delete 08b152afcfae (must be forced)(代码片段

Linux学习----docker使用

Docker学习1使用 Linux(CentOS7)搭建 Docker 基础环境

Linux学习--Docker学习

免费下载全套最新3Docker视频教程+教学资料+学习课件+源代码+软件开发工具

linux学习:Nginx--常见功能配置片段与优化-06