docker基础指令
1.docker图解
建议整个云服务器docker版镜像,免安装直接用
2.用docker安装sqli-labs来演示
1. 搜索镜像
docker search sqli-labs
2.拉取镜像
docker pull acgpiano/sqli-labs
3.查看镜像
docker images
4.运行镜像
docker run -dt --name akali_sqli-labs -p 11207:80 -rm acgpiano/sqli-labs
其中
-dt 后台运行
-name 命名
-p 11207:80 将docker容器的80端口映射到主机的11207端口
--rm 容器退出时自动清理内部的文件系统
5.进入容器
先查看正在运行的docker容器
docker ps
docker exec -it ID号 /bin/bash
docker常用命令
docker ps 查看当前处于运行状态的容器
docker ps -a 查看所有容器
docker images 列出本地所有镜像
docker start CONTAINER 启动一个或多个已经被停止的容器
docker stop CONTAINER 停止一个运行中的容器
docker restart CONTAINER 重启容器
docker rm CONTAINER 删除容器
docker rmi IMAGE 删除镜像
restart docker 重启docker
3.docker图解对应命令
1镜像与仓库
pull:
docker pull nginx
docker pull nginx:latest
push:
需要去dockerhub或其他官方仓库注册
2镜像→容器
run:
docker run -d -p 8080:80 nginx
-d:后台运行,避免阻塞shell
-p:外/内端口映射
3docker构建镜像
dockerfile:
vim dockerfile
dockerfile语法
from nginx 基于nginx
add ./ /usr/share/nginx/html/ 当前文件拷贝到指定目录
vim index.html
wai bu de wenjian
docker build -t 指定镜像名 . 指定当前目录下dockerfile构建
docker run -d -p 100:80 指定镜像名
4镜像与压缩包
save:
docker save 镜像名 > 1.tar
docker rmi 镜像 删除镜像
提示有容器基于其镜像,则先删除容器再删除镜像:
docker rm -f id
docker rmi 镜像名
docker images
load:
docker load < 1.tar
docker images
docker启动命令,docker重启命令,docker关闭命令
启动 systemctl start docker
守护进程重启 sudo systemctl daemon-reload
重启docker服务 systemctl restart docker
重启docker服务 sudo service docker restart
关闭docker service docker stop
关闭docker systemctl stop docker
其中参考了渴望力量的哈士奇的文章。