docker镜像:
docker search
docker pull
docker images
docker rmi
docker容器:
docker run
docker ps -a
docker ps -l //最后一个运行的容器
docker run –name mydocker -it centos /bin/bash
//每次docker容器启动应用程序只能启动一个,当应用程序结束就退出docker容器,当需要启动多个应用程序,需要使用脚本
docker run -d –name mynginx nginx
//在后台启动容器,当我们查看容器状态时,容器是运行的状态
exit //退出容器
docker start 容器id //启动已经终止的容器
docker rm 容器id //删除容器,启动的容器要先停止才能删除
docker stop 容器id //停止容器
docker exec 、docker attach //进入一个已经运行的容器容器,如果进不去可以使用下面的命令
docker inspect –format “{{.State.Pid}}” mynginx //在容器已经启动的情况下,通过该命令查看容器的pid
nsenter –target 3232(容器pid) –mount –uts –ipc –net –pid //该命令通过pid进入容器,原理是通过nsenter命令进入另一个命名空间
ps aux | grep nginx //进入容器之后执行该命令查看容器的进程
cd /etc/nginx/ //进入容器之后,进入nginx这个包的存放位置,然后可以进入配置文件查看他的root目录
进入容器的脚本:
docker 网络访问:
docker run -d -P –name mynginx1 nginx //随机映射
//指定映射
-p hostPort:containerPort
-p ip:hostPort:containerPort
-p ip::containerPort
-p hostPort:containerPort
-p hostPort:containerPort
docker run -d -p 91:80 –name mynginx2 nginx //这里把容器的80端口映射到宿主机的91端口,可以通过浏览器访问91端口
brctl show //显示网桥,这里会显示docker0,并且显示在网桥上面创建的接口
iptables -t nat -L //显示iptable规则和nat表,做一个地址转换
ifconfig //显示docker0网桥ip地址
ip ad li //进入容器之后执行该命令,查看容器ip地址
ip ro li //进入容器之后执行该命令,查看容器路由和网关,这里发现容器网关和docker0网桥ip相同