1-2、docker命令
docker命令
1 run
主要选项:
-d : 以后台进行方式运行容器
-t : 提供一个伪终端
-i : 提供交互输入,一般与“-t”一起使用,如果只提供“-i”选项,则容器启动后是无法退出的
-v : 映射一个volume给容器,如: -p /data/www:/var/www/html
-p : 将容器的端口映射给宿主机(指定映射出的端口),如: -p 60080:80
-P :将容器的端口映射给宿主机(映射出的端口是随机的)
docker run -it --name nginx -P 192.168.1.84:5000/nginx:1.14 bash
docker run -it --rm --name nginx -p :60080:80 192.168.1.84:5000/nginx:1.14 bash
# docker ps |grep test
1c7991431486 192.168.1.84:5000/nginx:1.14 "nginx -g 'daemon of…" 9 minutes ago Up 9 minutes 0.0.0.0:32768->80/tcp test
可以查看映射出来的端口,在浏览器访问ip:32768
也可用port参数查看映射出来的端口:
# docker port 1c7991431486
80/tcp -> 0.0.0.0:32768
默认是tcp端口,如要绑定UDP端口,则在后面加上/UDP
docker run -it --name httpd -p 60080:80/udp httpd:v1 bash
指定容器绑定的网络地址,比如绑定 127.0.0.1:
docker run -it --name httpd -p 127.0.0.1:60080:80 httpd:v1 bash
curl 127.0.0.1:60080
5 export-import
将docker导入导出:
导出某个容器,可以使用docker export命令。
$ docker export 1e560fca3906 > dockertest.tar
docker export -o dockertest.tar 1e560fca3906
导入容器:使用docker import:
cat dockertest.tar | docker import - 192.168.1.84:5000/dockertest:v2
docker import dockertest.tar 192.168.1.84:5000/dockertest:v2
6 commit 更新镜像
docker run -it e218edb10161 bash --进入容器后,更新后
docker commit -m="has update" -a="runoob" e218edb10161 runoob/httpd:v2
参数说明:
-m: 提交的描述信息
-a: 指定镜像作者
e218edb10161:容器 ID
runoob/httpd:v2: 更新后的目标镜像名