平常在工作中使用docker,经常会使用到的docker命令
使用镜像创建一个容器
sudo docker run -t -i ubuntu /bin/bash
-t 选项是让docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上
-i 则让容器的标准输入保持打开
-d 可以让docker容器在后台以守护态(Daemonized)形式运行
docker 常用命令
查看镜像
sudo docker images
查看所有容器
sudo docker ps -a
查看所有运行中的容器:
sudo docker ps
查看运行中的容器的输出信息
sudo docker logs [CONTAINER ID]
终止运行中的容器
sudo docker stop [CONTAINER ID]
启动的容器
sudo docker start [CONTAINER ID]
重新启动的容器
sudo docker restart [CONTAINER ID]
docker 删除容器
sudo docker rm [CONTAINER ID]
attch进入运行中的容器
sudo docker attach [NAMES]
exec进入容器(前提确保该容器是运行中的)并启动一个bash
sudo docker exec -ti [CONTAINER ID] /bin/bash
容器的导出
导出
sudo docker export [CONTAINER ID] > ~/Desktop/test_for_run.tar(要导出的目录和文件名)
导入
cat ~/Desktop/test_for_run.tar | sudo docker import - test/ubuntu:v1.0
基于已有镜像的容器创建
sudo docket run -ti REPOSITORY:TAG /bin/bash
sudo docker commit -m [-a] [-m] [-p]
-a 作者信息
-m 提交信息
-p =true 提交时暂停容器运行
Dockerfile来创建镜像
示例:命令如下
From ubuntu
MAINTAINER cl<silence_leocao@163.com>
RUN apt-get update && apt-get install -y inotify-tools nginx apache2 openssh-server
#COPY 将本地的目录复制到容器中
COPY /test /test
运行命令
sudo docker build -t [生成镜像的标签] [Dockerfile文件所在的路径]
创建一个数据卷容器
sudo docker run -it -v /dbdata --name dbdata ubuntu
想要再创建一个带数据卷的容器与上面的容器进行共享
sudo docker run -it --volumes-from dbdata --name db1 ubuntu
那么再两个容器dbdata/db1容器中的/dbdata目录下可以共享任意文件或者修改文件