先打个岔,这些命令总是记不住,所以记录在本文中,以便将来查询:
列出所有的容器 ID
docker ps -aq
停止所有的容器
docker stop $(docker ps -aq)
删除所有的容器
docker rm $(docker ps -aq)
删除所有的镜像
docker rmi $(docker images -q)
docker image prune --force --all或者docker image prune -f -a : 删除所有不使用的镜像
docker container prune: 删除所有停止的容器
好啦,不废话啦,我们进入正题:
1.下载一个docker镜像(用ubutun还是centos大家可以任选其一,这里我用centos):
docker pull centos
2.创建docker容器:
docker run -i -t -d --name baota -p 20:20 -p 21:21 -p 80:80 -p 443:443 -p 888:888 -p 8888:8888 --privileged=true -v /home/www:/www centos
解释:
上面命令的意思是创建一个docker容易命名为baota(名称大家自定义)让他后台运行,然后将宿主机的20,21,80,443,888,8888这五个端口映射到docker容器中去。 并且将宿主机的/home/www文件夹映射到docker容器的/www上去(注意:文件目录如果不存在。宿主机和容器会自己创建,无需手动创建)。privileged表示在运行容器的时候,给容器加特权,设置容器有写文件的权限。
3.进入容器:使用docker ps 查看
docker exec -it d497dcfd6062 /bin/bash(这里也可以直接用 bash)或者下面都行 docker exec -it baota /bin/bash
4.执行宝塔面板Centos安装命令
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
期间会有一个安装确认,输入y。然后就静心等着安装吧。。。
那么问题来了。。。。。。。。。。。。。。。。
安装至此结束,如果重启容器 宝塔会丢失吗?不会滴,我们试试:
上面我们可以看到宝塔应用还在,如果服务器断电或者重启了,也就是docker service重启了,宝塔还在吗?我们试试
service docker restart
接下里我们进入容器: 使用:docker ps -a 查看所有容器。docker attach 容器id或者直接 docker attach baota
特别注意:为了能够保存(持久化)数据以及共享容器间的数据,docker一定使用-v挂载主机目录到容器,比如上面启动容器的 docker -v 参数。 补充:宝塔默认密码使用 : bt default 查看,登录进去修改即可。如果上面安装的不是最新宝塔,可以再容器里面执行下面命令升级到最新:
curl http://download.bt.cn/install/update_to_6.sh|bash