[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nURjgyrU-1635671453142)(pictures/1.png)]
1 获取镜像docker pull nginx 等同于 docker pull nginx:latest2 查看本地镜像
docker images3 运行镜像
docker run -d -p 80:80 nginx
-d 后台运行
-p 内外端口映射
docker ps5 修改容器
docker exec -it xxxx bash
-it 接容器id
6 删除容器docker rm -f xxx7 提交容器
docker commit xxx name(自己定一个名字)
xxx 是容器的名字(docker ps 查到的),不是镜像的名字
8 通过dockerfile构建镜像跑成容器新建dockerfile文件(写法自行查阅官方文档)
-
Dockerfile
FROM nginx ADD ./ /usr/share/nginx/html/
然后在当前目录新建index.html
- index.html
wai bu de wen jian
docker build -t m2 .
m2 为新创建的镜像的名字,点表示当前目录
这样通过dockerfile文件build一个新镜像,使用docker run运行,浏览器中输入ip就可以看到我们自己修改的 index.html 内容了
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lGoQRdMY-1635671453153)(pictures/2.png)]
9 保存文件和重新加载docker save m2 >1.tar docker load < 1.tar
如果报错
Error processing tar file(exit status 1): archive/tar: invalid tar header
尝试如下指令
docker save -o 1.tar docker load -i 1.tar
摘一个网友(湿漉漉的小狐狸)的笔记
安装和常用CLI: 添加阿里云镜像:sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 安装命令:sudo yum install -y docker-ce docker-ce-cli containerd.io 启动命令:sudo systemctl start docker 添加当前用户到docker用户组:sudo usermod -aG docker $USER (需注销),newgrp docker (立即生效) Helloworld:docker run hello-world (本地没有镜像的话会自动从远端仓库pull) pull nginx 镜像:docker pull nginx(等效于nginx:latest) 运行:docker run -【d】(后台运行不阻塞shell) 【-p 80:80】(指定容器端口映射,内部:外部) nginx 查看正在运行:docker ps 删除容器:docker rm -f进入bash:docker exec -it bash commit镜像:docker commit 查看镜像列表:docker images (刚才commit的镜像) 使用运行刚才commit的镜像:docker run -d 使用Dockerfile构建镜像:docker build -t <存放Dockerfile的文件夹> 删除镜像:docker rmi 保存为tar:docker save > 从tar加载:docker load < 一些启动参数: 后台运行容器:-d 容器内外端口映射:-p 内部端口号:外部端口号 目录映射:-v 'dir name' : 指定映像版本: :
实验
https://labs.play-with-docker.com/
不需要本地安装,在web端做实验



