docker学习--容器
1、启动容器
sudo docker run -i -t 镜像名称 /bin/bash
sudo docker run -d -p 80 --name statis_web jamtur01/static_web \nignx -g "daemon off;"
-p :该标志用来控制Docker在运行时应该公布那些网络端口给外部。运行一个容器时,可以通过两种方式在宿主机上分配端口:
。docker可以在宿主机上随机选择一个比较大的端口号来映射到容器中,范围:49153~65535
。可以指定一个特定的端口号映射到容器中的端口
-p还可以制定特定的端口号和IP用于容器和宿主机之间 -p 80:80 或是 -p 127.0.0.1:8080:80
-P : 用来对外公开Dockerfile中EXPOSE指令中设置的所有端口号
-d :以分离的方式在后台运行,会将容器放到后台运行
-i : 保证容器中的STDIN是开启的,持久的标准输入时交互式shell的半边天
-t : 告诉Docker为要创建的容器分配一个伪tty终端。这样新创建的容器才会提供一个交互式shell
--name : 为容器命名
2、查看端口给配情况:
docker ps -l
4、启动容器:
sudo docker start 容器ID或name
5、查看日志: docker logs 容器名称|容器ID
监控docker 日志: docker logs -f 容器名称|容器ID, 与tail -f相似
可以跟踪日志的某一个阶段: docker logs --tail 10 -f 容器ID|容器名称
7、在容器内部运行进程:
docker exec命令在容器内部额外启动新的进程。在容器内部运行分为后台任务和交互式任务,后台任务在容器内运行且没有交互需求,而交互式任务保持在前台运行。
如: docker exec -d daemon_dave touch /etc/new_config_file
-d后台进程,, 在daemon_dave容器中创建了/etc/new_config_file文件
docker exec -i -t daemon_dave /bin/bash
交互式进程创建
8、停止容器:
docker stop daemon_dave
9、自动重启容器:
docker run --restart=always --name daemon_dave -d ubuntu /bin/sh -c "ddfsdsf"
--restart 设置为always无论推出代码是什么都会重启,还可以是on-failure,只有当容器的退出代码为非0值得时候才会重启,可以设置重启次数
--restart=on-failure:5
10、 查看容器: docker ps ,也可以使用docker inspect 对容器进行详细检查,,也可以用
-f | --format来选定查看结果
-a 查看全部容器
查看容器的进程:
sudo docker top 容器名称|容器ID
查看容器中的网络配置:
docker inspect --formate '{{.NetworkSettings}}' cf9c27
可以看到端口映射网关,网桥以及IP等信息。
docker instpect cf9c27 可以查看全部信息,以json格式输出,清晰明了
查看容器端口映射情况:
docker port/inspect 容器ID 80
查看容器的数据卷:
docker inspect suspicious_hoover
容器中默认数据卷存放目录 /var/lib/docker/vfs/dir/
11、删除容器用docker rm -f 容器名称|容器ID
12、容器的导出:
sudo docker export 容器名称 > my_container.tar
使用ls查看
容器导入:
用docker import 命令导入本地的tar包作为镜像:
cat my_container.tar | sudo docker import - import:container
也可以使用url来导入网络上的容器:
docker import url res:tag
caravel镜像启动:
docker run -p 8088:8088 -d kochalex/caravel
拉取:docker pull kochalex/caravel
admin / caravel

浙公网安备 33010602011771号