Docker常用命令-全

Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。
Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本。
Docker 要求 CentOS 系统的内核版本高于 3.10 
 
查看服务器linux版本
cat /etc/redhat-release
查看当前服务内核版本
uname -r
查看当前yum服务的版本信息
yum info yum 
 
了解一下Systemctl的作用
Systemctl是一个systemd工具,主要负责控制systemd系统和服务管理器。
Systemd是一个系统管理守护进程、工具和库的集合,用于取代System V初始进程。Systemd的功能是用于集中管理和配置类UNIX系统。
 
使用Curl的方式下载get-docker.sh的脚本到当前目录
 
在当前目录 执行 ./get-docker.sh  或者  sudo sh get-docker.sh (分别都表示 执行当前docker的安装脚本 )
启动Docker进程
sudo systemctl start docker
关闭当前Docker进程
sudo systemctl stop docker
重启Docker进程
sudo systemctl restart docker
 
删除Docker CE
sudo yum remove docker-ce
sudo rm -rf /var/lib/docker
 
----------------------------------Docker进程启动后--------------------------
默认Docker官方网址为: https://www.docker.com/
此处使用docker login
输入账号:arnoldzhao 密码:arnoldzhao 或者 X3x9rXsMyc2QmSX 
-------------------------------镜像配置---------------------------
/etc/docker下创建daemon.json文件,并填充json内容为:
网易的镜像地址
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
或者(Docker国内的镜像地址)
{
  "registry-mirrors": ["https://registry.docker-cn.com"]
}
最后,重启docker进程 
systemctl restart docker
查看当前Docker的信息
docker info 
此处可以看到当前docker的注册地址是 index.docker.io,但当前docker的仓库镜像地址已经更改为了上述所设置的,网易云的镜像地址

 
 
查看当前Docker使用状态,可以得到Docker的一些基本信息以及报错等信息 
systemctl status docker -l
 
--------------------------------------------Docker images操作-------------------------------
从仓库中查找对应的jdk8的镜像信息
docker search jdk8
下拉仓库获取hello-word的镜像信息
docker image pull hello-word
查看当前Docker所有镜像信息
docker image ls  或者 docker images
docker images -q ,其中-q表示列取出当前所有镜像的ID
docker images -f  since=mongo:3.2 ,其中-f表示进行筛选,此处表示获取所有在mongo:3.2之后建立的镜像信息(-f筛选功能强大,可以去多多查看一些其它的使用方式)
删除当前镜像信息
docker image rm [imageName]
docker image rm $(docker images -q)  通过docker images -q 获取到所有的镜像ID后,进行docker image rm 的批量删除操作
------------------------------------------------Docker run操作 及相关Docker命令----------------------------------------
-d表示设置容器在后台一直运行,-p 表示将主机上的8088端口映射到容器的80端口上, --name表示指定当前启动后容器的名称,此处nginx表示所要启动的镜像
docker run -d -p 8088:80 --name nginx2019 nginx
表示查看容器内存所运行的进程
docker top nginx2019 
表示查看当前容器的底层记录描述信息
docker inspect nginx2019
查看容器标准输出日志
docker logs -f nginx2019
停止容器
docker stop nginx2019
重启容器
docker start nginx2019
移除容器
docker rm nginx2019 ,或者使用 docker rm $(docker images -q)表示删除所有容器
进入容器的交互式终端
docker exec -it nginx2019 /bin/bash
使用commit将当前容器制作为镜像信息         (使用docker commit将当前容器制作为镜像的方式可以很好的保留容器内的各种日志等信息)
命令格式:docker commit [选项] <容器ID或容器名> [<仓库名>[:<标签>]]
docker commit  --author "20190725arnold" --message "update index.html" nginx2019 nginx2019:v1
再次使用docker ps -a即可看到新生成的镜像信息,其中新的镜像仓库信息为:nginx2019,当前版本 tag标签则为 v1,
将容器内文件与主机文件互相拷贝
将当前docker-name的容器内文件拷贝到主机的/opt目录下
docker cp docker-name:/opt/test.js /opt
 
将当前主机上/opt/test.js文件拷贝到 容器docker-name的opt目录下
docker cp /opt/test.js docker-name:/opt
 
目录挂载:使用-v参数,:前面的目录表示主机上的目录,后面的目录表示容器内目录,此处则表示将当前主机的/opt/test目录挂载到容器内的/soft目录下
docker run -v /opt/test:/soft 
 
Docker镜像打包(注意:是将当前镜像打包)
docker save -o 文件名.tar 镜像名称
docker save 镜像名称>/opt/文件名.tar
 
将对应的打包镜像加载到对应的Docker镜像中
docker load < 文件名.tar
 
-----------------------需注意:save,export以及load和import;这两种打包方式不能被混用------------------------------
 
Docker容器打包(将已运行的容器内所有文件归档打包到对应的tar文件中)
docker export  -o nginx.tar 容器名称(nginx-sip)
 
将所归档的容器文件导入为镜像
docker import nginx.tar nginx:v1
 
Docker的三种安装方式(离线安装,Docker存储库安装,脚本安装) https://www.cnblogs.com/zh94/p/11294853.html
 
--------------------------------------------Dockerfile相关---------------------------------
docker inspect命令,查看当前镜像的所有元数据信息(查看对应的元数据最重要的是可以看到当前镜像的构建命令以及代码等信息***很重要,可以在刚拉下来一个镜像的时候,在不了解的时候,通过元数据可以很清晰的看到对应的镜像过程和所启动时的执行命令,这对于刚接触一个镜像时可以更快的熟悉起来,而不用尝试着去担心镜像中丢失了那些数据或者作者没有构建进去等问题,毕竟通过元数据一切都一目了然)
docker inspect 【镜像名称 或者 容器名称】
使用Docker Build构建对应的Dockfile的镜像信息
docker build命令说明:docker build [选项] <上下文路径/URL/->;   可参考链接如下:
其中 -t 表示当前构建后的镜像名称;此处‘.’表示指明当前的上下文路径,也就是当前输入build命令时,当前所在的目录路径;
当使用copy命令时,COPY ./package.json /app/时,则表示获取当前上下文路径下的JSON文件,然后拷贝到对应的容器APP目录下;
docker build -t nginx:v3 .
此处-f 表示指明要构建的Dockerfile文件的路,(如果不指定当前Dockerfile的路径,则默认会读取当前所指定的上下文路径中的Dockerfile作为构建文件而构建),‘.’ 还是用来指定当前的上下文路径是哪里,此处使用'.',表示当前上下文路径为当前使用build命令时,所在的文件目录路径 。
docker build -t nginx:v3 -f /opt/Dockerfile . 
-----------------------------------Dockerfile语法相关-----------------------
COPY复制文件:语法:COPY [--chown=<user>:<group>] <源路径>... <目标路径>
表示将当前主机服务上下文路径中的 package.json文件,拷贝到对应的容器/opt/app目录下,中间空格隔开,表示语法规范,其中如果所指定的目标路径在对应容器中不存在时,则容器将会自动创建;除此之外,拷贝到容器内的文件,也可以直接使用--chown来设置当前文件的权限;
COPY package.json /opt/app/ 
 

Docker常用命令-全的更多相关文章

  1. 关于Docker 常用命令

    Docker 常用命令 分类列一下常用的CLI命令 仓库相关 search/ pull / push / login etc. 例:docker pull ubuntu 从仓库下载ubuntuimag ...

  2. 【Docker】(3)---linux部署Docker、Docker常用命令

    linux部署Docker.Docker常用命令 本次部署Linux版本:CentOS 7.4 64位. 说明: 因为Docker是基于Linux 64bit的 所以Docker要求64位的系统且内核 ...

  3. Docker常用命令(二)

    Docker常用命令 查看Docker所有正在运行的容器 docker ps 查看Docker已退出的容器 docker ps -a 查看Docker所有镜像 docker images 删除镜像 删 ...

  4. Docker应用二:docker常用命令介绍

     Docker常用命令使用介绍 docker中常用的命令: 1.docker search image_name:搜查镜像 2.docker pull image_name:从镜像库中拉去镜像 3.d ...

  5. Docker常用命令汇总,和常用操作举例

    Docker命令 docker 常用命令如下 管理命令: container 管理容器 image 管理镜像 network 管理网络 node 管理Swarm节点 plugin 管理插件 secre ...

  6. 1021 docker常用命令和Jenkins搭建

    docker常用命令 1.镜像管理 docker pull (镜像名) # 默认拉取最新版本的镜像 docker pull (镜像名:版本号) #拉取指定版本的镜像 docker push (镜像名) ...

  7. Docker 常用命令——镜像

    Docker 常用命令 帮助命令 docker version    --版本信息 docker info       --详细信息 docker --help     --帮助 镜像命令 1.doc ...

  8. docker 常用 命令

    http://os.51cto.com/art/201409/451117.htm 2.1 在测试机启动容器,安装ssh docker run -i -t ubuntu /bin/bash #此方式运 ...

  9. Docker 常用命令总结

    Docker 常用命令总结   回到顶部 镜像相关 搜索 docker search *image_name* 下载 docker pull *image_name* 查看 docker images ...

随机推荐

  1. Android的系统框架

    Android的系统架构采用了分层架构的思想,如图1所示.从上层到底层共包括四层,分别是应用程序程序层.应用框架层.系统库和Android运行时和Linux内核.  图1:Android系统架构图 每 ...

  2. 【Luogu P1631】序列合并

    Luogu P1631 题意很好懂,不作分析 很容易想出一个解法是求出每一个和,排序后取前n个. 当然这种做法妥妥的会MLE+TLE 我们会发现实质上这种做法的缺点在于存入了大量不需要的数据. 那么该 ...

  3. 仿微信 即时聊天工具 - SignalR (一)

    话不多说,先上图 背景: 微信聊天,经常会遇见视频发不了,嗯,还有聊天不方便的问题,于是我就自己买了服务器,部署了一套可以直接在微信打开的网页进行聊天,这样只需要发送个url给朋友,就能聊天了! 由于 ...

  4. css之文本两端对齐的两种解决方法

    说起文本对齐,大家都知道text-align,最常用的有left.right.center,今天我们说一下justify,也就是文本两端 对齐.说起来简单,但是有些小坑大家还是要注意的. 现在我们有这 ...

  5. xmake从入门到精通8:切换编译模式

    xmake是一个基于Lua的轻量级现代化c/c++的项目构建工具,主要特点是:语法简单易上手,提供更加可读的项目维护,实现跨平台行为一致的构建体验. 本文我们会详细介绍下如何在项目构建过程中切换deb ...

  6. 进入编辑模式、vim命令模式、vim实践

    第4周第5次课(4月13日) 课程内容:5.5 进入编辑模式5.6 vim命令模式5.7 vim实践 5.5 进入编辑模式 所谓编辑模式就是进入到一个可以编辑文本文档的模式,常规的方式就是按小i进入编 ...

  7. 工作中的开发过程(Javaweb路线,写给刚刚实习或者马上就要工作的朋友)

    工作中的开发过程(Javaweb路线,写给刚刚实习或者马上就要工作的朋友) 当我还没开始工作的时候,我是对实际项目开发流程充满未知和向往的,当时很希望能够有一个过来人,给我介绍一下实际工作起来是什么样 ...

  8. 前端工具-定制ESLint 插件以及了解ESLint的运行原理

    这篇文章目的是介绍如何创建一个ESLint插件和创建一个ESLint rule,用以帮助我们更深入的理解ESLint的运行原理,并且在有必要时可以根据需求创建出一个完美满足自己需求的Lint规则. 插 ...

  9. VMware密钥

    UG5J2-0ME12-M89WY-NPWXX-WQH88 GA590-86Y05-4806Y-X4PEE-ZV8E0 YA18K-0WY8P-H85DY-L4NZG-X7RAD UA5DR-2ZD4 ...

  10. 一文读懂Python web框架和web服务器之间的关系

    我们都知道 Python 作为一门强大的语言,能够适应快速原型和较大项目的制作,因此被广泛用于 web 应用程序的开发中. 在面试的过程中,大家或多或少都被问到过这样一个问题:一个请求从浏览器发出到数 ...