Docker基本使用命令

Posted qwangxiao

tags:

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

Docker基本使用命令

首先要在宿主机上安装Docker,Docker安装参考 
Docker学习(二)—–Docker安装和使用 
Docker命令也比较类似Git,支持push以及pull操作上传以及下载Docker镜像。

查看当前Docker的版本

docker version
  • 1

查看当前系统Docker信息

docker info
  • 1

查看宿主机上的镜像

Docker镜像保存在/var/lib/docker目录下:

docker images
  • 1

从Docker hub上下载某个镜像:

docker pull ubuntu:latest
  • 1

执行docker pull ubuntu会将Ubuntu这个仓库下面的所有镜像下载到本地repository。

启动一个容器使用docker run:

#启动一个容器
docker run -i -t ubuntu /bin/bash       

#容器退出后立即删除该容器使用--rm
docker run -i -t --rm ubuntu /bin/bash             

#指定容器的名称使用--name,否则会随机分配一个名称
docker run -t -i --name test_container ubuntu /bin/bash

#容器以Host方式进行网络通信使用--net=host
docker run -t -i --net=host ubuntu /bin/bash   

#绑定挂在一个Volume,在宿主机和Docker容器中共享文件或目录使用-v
docker run -t -i -v /host:/container ubuntu /bin/bash   

查看当前有哪些容器正在运行

使用

docker ps

 

输出如下:

zzq@host:~(0)$ docker ps
CONTAINER ID     IMAGE                COMMAND        CREATED         STATUS          PORTS    NAMES
50a1261f7a8b     docker_test:latest   "/bin/bash"    7 seconds ago   Up 6 seconds             test_container
#目前只有一个container id为50a1261f7a8b的容器正在运行

 

启动或停止某个container

使用

docker start/stop container_id:
  • 1

输出如下:

zzq@host:~(0)$ docker stop 50a1261f7a8b
50a1261f7a8b

zzq@host:~(0)$ docker ps -a | grep 50a1261f7a8b
50a1261f7a8b   docker_test:latest   "/bin/bash"   2 minutes ago   Exited (0) 14 seconds ago   sleepy_ptolemy
#执行docker stop后,该容器的状态变更为Exite

保留container的修改作为一个新的镜像

使用

docker commit
  • 1

比如: 
使用命令

docker commit -m="test docker commit" 50a1261f7a8b docker_test
  • 1

-m是提交的信息 
50a1261f7a8b是需要保留修改容器的id 
docker_test是容器的名称 
输出如下:

zzq@host:~(0)$ docker commit -m="test docker commit" 50a1261f7a8b docker_test
55831c956ebf46a1f9036504abb1b29d7e12166f18f779cccce66f5dc85de38e

zzq@host:~(0)$ docker images www.yongshiyule178.com| www.douniu1956.com grep docker_test
docker_test                            latest              55831c956ebf        10 seconds ago      290.7 MB

Dockerfile创建一个镜像

除了从Docker hub上下载镜像,也可以写Dockerfile创建一个镜像,以创建一个Django程序为例,Dockerfile内容如下所示:

FROM ubuntu:12.04
MAINTAINER Your Name

RUN apt-get update
RUN apt-get install -y python-software-properties python-pip

ADD myproject /opt/code

RUN pip install -r www.078881.cn  /www.yigouyule2.cn opt/code/requirement.txt

 

写完Dockerfile,在Dockerfile所在目录执行docker build创建镜像并启动Django服务:

docker build -t docker_test .
docker run -i -t docker_test /bin/bash -c "cd /opt/code;python manage.py runserver 0.0.0.0:8080"
  • 1
  • 2

将制作的镜像上传到private registry

test是镜像版本,不指定则为latest。 
docker.example.com是仓库的地址 
test是远程仓库的目录 
使用命令

docker tag test docker.example.com/test
docker push www.leyouzaixian2.com  docker.example.com/test
  • 1
  • 2

删除镜像

经过长时间使用,主机上存储了很多已无用的镜像,想将它们删除则用docker rm或者docker rmi,比如:

docker rm container_id
docker rmi image_id









以上是关于Docker基本使用命令的主要内容,如果未能解决你的问题,请参考以下文章

linux_docker入门

Docker基本使用命令

Docker 基本命令和使用

Docker架构:安装与基本命令

Docker-基础使用:安装,启用,基本命令,数据卷

docker之入门——安装及基本命令