Docker基本使用命令

2018/07/09

Docker基本使用命令

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

查看当前Docker的版本

docker version1

查看当前系统Docker信息

docker info1

查看宿主机上的镜像

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

docker images1

从Docker hub上下载某个镜像:

docker pull ubuntu:latest1

执行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   1234567891011121314

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

使用


docker ps1

输出如下:

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的容器正在运行1234

启动或停止某个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后,该容器的状态变更为Exited123456

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

使用

docker commit1

比如: 使用命令

docker commit -m="test docker commit" 50a1261f7a8b docker_test1

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

输出如下:

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

zzq@host:~(0)$ docker images | grep docker_test
docker_test                            latest              55831c956ebf        10 seconds ago      290.7 MB12345

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 /opt/code/requirement.txt123456789

写完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"12

将制作的镜像上传到private registry

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

docker tag test docker.example.com/test
docker push docker.example.com/test12

删除镜像

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

docker rm container_id
docker rmi image_id

Search

    欢迎关注我的微信公众号

    晨枫

    alex0227

    Table of Contents