docker及Dockerfile使用
*docker 基本常用命令*:
docker version #查看版本
docker search #搜索镜像
docker pull #拉取镜像
docker images #查看镜像
docker ps #查看运行中的容器
docker ps -a #查看全部容器
docker stop #停止容器
docker rm #删除容器
docker rmi #删除镜像
docker删除镜像报错:
REPOSITORY TAG IMAGE ID CREATED SIZE
test latest 43b0ad03c4ee 14 hours ago 493MB
python 3.7-alpine 7fbc871584eb 7 days ago 95.8MB
redis 4 6e221e67453d 4 weeks ago 89.2MB
执行docker rmi 43b0ad03c4ee
时报错:
Error response from daemon:conflict: unable to delete 43b0ad03c4ee (must be forced) - image is referenced in multiple repositories
解决:执行docker rmi -f name
即docker rmi -f test
即可
高频使用语句:
Dockerfile使用:
在Dokcerfile文件同级目录下,使用docker build
命令进行构建镜像
docker build -t 镜像名 . #结尾处的.表示当前目录
Dockerfile使用详见→Docker-DockerFile的使用
docker run --name CONTAINER -d -p 8888:80 镜像名 #创建容器
docker exec -it CONTAINER bash #进入容器
docker diff CONTAINER #查看容器文件修改情况
docker commit [OPTIONS] CONTAINER 仓库:标记 #将容器保存为镜像
docker run --help
查看参数信息
-p 8888:80 将本机的8888端口映射到docker80端口
将docker映射到公网上:
使用如下命令
iptables -t nat -A DOCKER -p tcp --dport 8888 -j DNAT --to-destination IP地址:8888
或者iptables -I INPUT -s ip段 -p tcp --dport 8888 -j ACCEPT
在服务器安全组开启8888端口
服务器利用docker搭建CTFd平台、webug靶场,并映射到公网IP