1、sudo docker ps -a

查看当前docker实例的信息:

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                         PORTS               NAMES

2、宿主机和容器之间的数据拷贝:

sudo docker cp shared_dir/data/  CONTAINER ID:/home/xxx/ 或者 sudo docker cp shared_dir/data/  NAMES:/home/xxx/

sudo docker cp CONTAINER ID:/home/xxx/ shared_dir/

3、常用命令

docker container ls -a #查看container信息

docker exec -it containerID bash #进入container

docker run -p 4000:80 imageName #将机器的 4000 端口映射到容器的 80 端口

docker run -d -p 4000:80 imageName # 内容相同,但在分离模式下

docker ps # 查看所有正在运行的容器的列表

docker stop containerID # 平稳地停止指定的容器
docker ps -a # 查看所有容器的列表,甚至包含未运行的容器
docker kill containerID # 强制关闭指定的容器
docker rm containerID # 从此机器中删除指定的容器
sudo docker rm $(sudo docker ps -aq) # 从此机器中删除所有容器
docker images -a # 显示此机器上的所有镜像
docker rmi imagename # 从此机器中删除指定的镜像
sudo docker rmi $(sudo docker images -q) # 从此机器中删除所有镜像
docker login # 使用您的 Docker 凭证登录此 CLI 会话
docker tag <image> username/repository:tag # 标记 <image> 以上传到镜像库
docker push username/repository:tag # 将已标记的镜像上传到镜像库
docker run username/repository:tag # 运行镜像库中的镜像

3、制作镜像:

docker build -t imagename Dockerfilepath

# imagename:镜像名称,自定义

# Dockerfilepath:Dockerfile 所在文件夹名称,当前名录为 “.”

如: docker build -t hello_world .

4、运行镜像:

docker run -it --name c_name imagename
-it:可交互
c_name:container名称,自定义
如:
docker run -it --name hello5 hello_world

5、Docker镜像文件导出和导入

  • 镜像文件导出

sudo docker save imageid > xxxx.tar

  • 镜像文件导入

sudo docker load < xxxx.tar

镜像保存/载入:docker load/docker save;将一个镜像导出为文件,再使用docker load命令将文件导入为一个镜像,会保存该镜像的的所有历史记录。比docker export命令导出的文件大,很好理解,因为会保存镜像的所有历史记录。

容器导入/导出:docker import/docker export;将一个容器导出为文件,再使用docker import命令将容器导入成为一个新的镜像,但是相比docker save命令,容器文件会丢失所有元数据和历史记录,仅保存容器当时的状态,相当于虚拟机快照。

6、启动、停止、重启容器命令:

docker start container_name/container_id
docker stop container_name/container_id
docker restart container_name/container_id

7、执行docker ps命令,出现 "Cannot connect to the Docker daemon at unix:///var/run/docker.sock. ..."问题

  执行sudo service docker start 命令,启动docker服务,返回

docker start/running, process 2662

  此时进程启动成功,再执行docker ps,问题解决

8、从容器中导入和导出及启动

(1):导出容器
    如果要导出本地某个容器,可以使用 docker export 命令,导出容器快照到本地文件。
  $ sudo docker ps -a
  CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                    PORTS               NAMES
  4391a814370e        ubuntu        "/bin/bash"         16 hours ago        Exited (0) 11 hours ago                       test
  $ sudo docker export 4391a814370e > test_export.tar

(2):导入容器快照
    可以使用 docker import 从容器快照文件中再导入为镜像,例如
  $ cat test_export.tar | sudo docker import - test2:v1.0
  $ sudo docker images
  REPOSITORY          TAG                 IMAGE ID            CREATED              VIRTUAL SIZE
  test2            v1.0             9d37a6082e97        About a minute ago   100.3 MB
 (3):使用导入容器生成的镜像,再次生成容器时候需要指定command("/bin/bash")

  使用GPU方式:

sudo docker run -it -v /home/share:/share -p 192.168.10.214:5000:80  --runtime=nvidia -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all test2:v1.0 "/bin/bash"

9、其实只需要一条命令,就能实现Docker和宿主机之间共享文件。启动Docker镜像的命令一般如下:
  docker run -it xxx:latest /bin/bash  其中-it后面的参数就是你docker镜像的名称。
  现在只需要加一个-v参数即可。
  docker run -it -v /home/share:/share microsoft/dotnet:latest /bin/bash
  上面命令表示:把宿主机的/home/share目录挂载到xxx:latest容器的/share目录下
  执行完上面命令进入Docker容器后,进入/share文件夹下,ls后就会看到原来宿主机下目录“/home/share”的文件。

10、重命名镜像:

docker tag f534e2434f94(imageid) llf(repostitory_name):v1.0(tag_flag)

11、docker stats 查询docker内存等状态

12、sudo docker ps -as 查看容器导出后的大小

13:修改容器存储路径:

(1) vim /etc/systemd/system/docker.service.d/override.conf

增加: --graph = /path

(2)

systemctl daemon-reload

systemctl restart docker

systemctl enable docker

关于ubuntu 16.04 docker常用命令的更多相关文章

  1. ubuntu 16.04 docker下安装klee环境

    手动构建docker映象: 从github上获取klee源码 git clone https://github.com/klee/klee.git cd klee 使用存储库根目录中dockerfil ...

  2. Ubuntu 16.04开机进入命令行(tty1)+分辨率调节+字体颜色设置+中文乱码解决(解决虚拟终端Ctrl+Alt+F1分辨率太大)

    一.开机进入命令行模式(tty1) sudo vim /etc/default/grub 把GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”改成GRUB_CMDLIN ...

  3. Ubuntu 16.04 LTS 常用快捷键

    在Linux下Win键就是Super键 启动器 Win(长按) 打开启动器,显示快捷键 Win + Tab 通过启动器切换应用程序 Win + 1到9 与点击启动器上的图标效果一样 Win + Shi ...

  4. Ubuntu 16.04 一系列软件安装命令,包括QQ、搜狗、Chrome、vlc、网易云音乐安装方法

    1 简介 Ubuntu 16.04安装完后,还需要做一些配置才能愉快的使用,包括添加软件源.安装搜狗输入法.Chrome浏览器.网易云音乐.配置快捷键.安装git等等,下面就跟着我来配置吧,just ...

  5. Ubuntu 16.04安装Docker-CE

    系统环境 * Ubuntu: 16.04 * Docker: 17.09.0-ce 安装步骤 1.安装Docker-CE,具体参考:https://docs.docker.com/engine/ins ...

  6. Ubuntu 16.04安装sogou 拼音输入法

    一.更换为国内的软件源 安装搜狗输入法之前请先更换为国内的软件源,否则无法解决依赖问题.首先,用以下命令打开源列表: sudo gedit /etc/apt/sources.list #用文本编辑器打 ...

  7. pymongo和mongoengine安装和使用教程 包含常用命令行和代码示例 | pymongo and mongoengine tutorial on ubuntu 16.04

    本文首发于个人博客https://kezunlin.me/post/e88f04e5/,欢迎阅读最新内容! pymongo and mongoengine tutorial on ubuntu 16. ...

  8. Ubuntu 16.04 服务器上配置使用 Docker

    Docker基础概念 在使用Docker之前,我们先了解下几个Docker的核心概念 Docker Daemon Docker引擎,就是运行在后台的一个守护进程,在我们启动它之后,我们就可以通过Doc ...

  9. 记录Ubuntu 16.04 安装Docker CE

    一.Docker的两个版本 Docker有两个版本: 社区版(CE) 企业版(EE) Docker Community Edition(CE)非常适合希望开始使用Docker并尝试使用基于容器的应用程 ...

随机推荐

  1. PS 基础知识 渐变编辑器如何使用

    ps渐变编辑器在哪 [ 标签:渐变,ps 渐变,编辑器 ] _______志 敏 回答:3 人气:9 解决时间:2009-04-16 15:28 满意答案 你先点渐变工具 然后左上出现渐变条设置 如图 ...

  2. python(38)- 网络编程socket

    一 客户端/服务器架构 即C/S架构,包括 1.硬件C/S架构(打印机) 2.软件C/S架构(web服务) 美好的愿望: 最常用的软件服务器是 Web 服务器.一台机器里放一些网页或 Web 应用程序 ...

  3. Twitter网站架构分析介绍

    http://www.kaiyuanba.cn/html/1/131/147/7539.htm作为140个字的缔造者,twitter太简单了,又太复杂了,简单是因为仅仅用140个字居然使有几次世界性事 ...

  4. mysql 清空或删除表数据后,控制表自增列值的方法

    http://blog.sina.com.cn/s/blog_68431a3b0100y04v.html 方法1: truncate table 你的表名 //这样不但将数据全部删除,而且重新定位自增 ...

  5. Web开发者用什么编辑器?

    写在前面的话:从事web前端开发也有一段时间了,今天主要想分享的是文字(代码)编辑器.对于编辑器每个人都有自己的偏爱,也分不同语言的编码者,这里我就拿我接触过的来说说吧! Web开发者用什么编辑器? ...

  6. C++零基础到入门

    (1)C语言概述 (2)编写.运行一个简单的C语言程序 (3)数据类型 (4)运算符和表达式 如果你对C语言一窍不通,那你就好好看这篇文章,我会力争让你真正的做到从零基础到入门,同时这篇文章会让你基本 ...

  7. Python--常用模块部分

    模块 pip install #模块名称 #安装模块 #导入模块 from collections import namedtuple collections模块 提供了几个额外的数据类型: Coun ...

  8. Dos下mySql

    2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 ...

  9. vim 参数文件配置

    下面是我配置的遇到问题不能修改配置文件时的解决方案 1 /usr/share/vim/vimrc 2 这个是系统型的vimrc配置文件,为了保证vim的正常使用,一般并不会修改这个文件, 而是应该在你 ...

  10. 一套Tomcat处理多个域名请求 - Virtual Host

    最近和Tomcat较上劲了... 作为Tomcat的系列之一,来尝试下如何用一套Tomcat来处理多个域名请求. 场景:基于成本考虑,多个department共用一台服务器,然后该服务器上就一套Tom ...