Docker虚拟化之<基础命令>
1.在docker hub中搜索镜像
docker search nginx
2.从docker镜像服务器拉取指定镜像或者库镜像
docker pull docker.io/nginx
3.列出系统当前镜像;列出docker容器(虚拟机)
docker images
#列出镜像
docker ps
#列出正在运行的容器
docker ps -a
#列出所有容器
4.基于Nginx镜像,启动Nginx容器(虚拟机)
docker run -itd -p 80:80 docker.io/nginx
# run 全新启动一台容器(虚拟机)
# -i interactive交互模式
# -t tty打开一个终端
# -d daemon后台启动
# -P 开启DNAT映射,将宿主机80映射至容器的80,用户访问宿主机的80端,就相当于访问容器的80端。
5.查看容器(虚拟机)的IP地址
docker inspect 89bf8256d10d | grep -i ipaddr |tail -1 |awk -F\" '{print $4}'
6.关闭容器(虚拟机),启动容器(虚拟机)
docker stop ID
docker start ID
7.宿主机上查看docker容器中配置文件(在docker容器上运行命令)
docker exec 89bf8256d10d ls /usr/share/nginx
8.从宿主机中拷贝指定文件或目录到容器(虚拟机)中
docker cp index.html 89bf8256d10d:/usr/share/nginx/html/
9.删除容器(虚拟机),删除镜像
docker rm -f 89bf8256d10d
docker rmi ab56bba91343
10.启动容器(虚拟机)时,变更容器的名字
docker run -itd -p 82:80 --name=nginx docker.io/nginx
11.导出nginx镜像
docker save nginx >nginx.tar
12.进入docker容器(虚拟机)
docker exec -it efe08c139281 /bin/bash
# -i 交互模式
# -t 打开一个终端
13.删除所有容器(虚拟机)
docker ps -aq|xargs docker rm -f
14.修改镜像的名字(会多出一个镜像,原镜像还存在,若删除原镜像,新多出的镜像也会被删除;若删除新多出的镜像,原镜像还存在)(若删除的话,就删名字)
docker tag nginx nginx-new1
15.docker启动MySQL数据库
docker pull mysql:5.6
docker run -itd -p 3306:3306 mysql:5.6 sleep 9999d
docker exec -it c022f0afe476 /bin/bash
touch /var/run/mysql/mysql.sock
/usr/bin/mysql_install_db --user=mysql --datadir=/var/run/mysqld/
service mysql restart
mysql