参考链接:
docker教程菜鸟教程
docker官方文档
通过Dockerfile构建镜像
docker build -t image-name docker-file-location
-t:使用提供的image-name来标记构建的镜像
也可以使用URL上的Dockerfile来构建镜像
docker build github.com/creack/docker-firefox
创建并运行容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
OPTIONS:
- -d: 后台运行容器,并返回容器ID
- -i: 以交互模式运行容器,通常与 -t 同时使用;
- -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
- –name=“nginx-lb”: 为容器指定一个名称;
创建一个Ubuntu16.04的容器并运行/bin/bash
docker run -ti ubuntu:16.04 /bin/bash
查看本地的镜像
docker images [OPTIONS] [REPOSITORY[:TAG]]
OPTIONS:
- -a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层)
- -q :只显示镜像ID
例如:查看Ubuntu镜像
docker images ubuntu
列出容器
docker ps [OPTIONS]
OPTIONS:
- -a :显示所有的容器,包括未运行的
- -l :显示最近创建的容器。
- -n :显示最近创建指定数量容器。
显示最近创建的5个容器:
docker ps -n 5
启动,停止和重启容器
docker start [OPTIONS] CONTAINER [CONTAINER...]
docker stop [OPTIONS] CONTAINER [CONTAINER...]
docker restart [OPTIONS] CONTAINER [CONTAINER...]
CONTAINER:容器的id
删除本地镜像
docker rmi [OPTIONS] IMAGE [IMAGE...]
OPTIONS:
- -f:强制删除
删除容器
docker rm [OPTIONS] CONTAINER [CONTAINER...]
OPTIONS:
- -f:强制删除运行中的容器
在正在运行的容器中运行命令
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
OPTIONS:
- -d: 后台运行容器,并返回容器ID
- -i: 以交互模式运行容器,通常与 -t 同时使用;
- -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
启动,停止和重启docker服务
sudo systemctl start docker
sudo systemctl stop docker
sudo systemctl restart docker
根据容器创建镜像
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
OPTIONS说明:
- -a :提交的镜像作者;
-c :使用Dockerfile指令来创建镜像;
-m :提交时的说明文字;
-p :在commit时,将容器暂停。
执行如下命令,可以生成容器container-id对应的镜像
docker commit container-id new-name