docker容器技术在生产环境中使用比例越来越高,所以作为前端技术人员我们也必须要去学会如何使用,如果你也想去了解docker,就和我一起来揭开docker的面纱吧,本文会持续更新~
1.docker容器的相关命令
在了解命令之前,我们先明确一下概念。什么是容器呢?其实容器就是只读的镜像之上新加了读写层。可以简单理解为容器就是镜像加上读写层。
下面我们介绍一些常用命令:
// 创建一个容器,其中镜像是nginx
docker container run nginx
// 执行上面的命令,docker就会从Docker Hub上拉取对应的镜像到本地,并自动安装到docker容器中
// 查看这个容器中运行中的镜像
docker container ls
// 执行完上面的命令,cocker会列出运行中镜像对应的信息,其中id是当前容器的唯一标识
// 上面的仅是列出正在运行中的容器,查看所有容器的命令如下
docker container ls -a
// 查看所有容器id
docker container ps -aq
// 停止当前name或者id正在运行的容器(id只需输入前三位即可)
docker container stop <name or ID>
// 执行完上面的命令,cocker停止当前id的容器
// 停止多个容器,只需要在后面输入多个id即可,比如:
docker contaner stop a1 b2 c3
// 如果全部停止可以利用所有容器id的语法
docker container stop $(socker container ps -qa)
// 删除当前name或者id正在运行的容器
docker container rm <name or ID>
// 执行完上面的命令,cocker删除当前id的容器
// 删除多个容器,只需要在后面输入多个id即可,比如:
docker container rm a1 b2 c3
// 如果全部删除可以利用所有容器id的语法
docker container rm $(socker container ps -qa)
2.端口映射模式:attached、detached、it
在开启端口映射之前,首先要知道docker对应的容器端口是多少。执行下面命令即可启用映射:
docker container run -p 8090:80 nginx
// 上述命令为attached模式,在前台运行,每次访问都会有一条日志,且关掉shell窗口服务停止
// 此时在浏览器输入127.0.0.1:8090即可打开nginx网址
docker container run -d -p 8090:80 nginx
// 上述命令为detaced模式,在后台运行,每次访问不会增加日志,但是关掉shell框口服务不会停止,适合生产环境
docker container logs <id or Image name>
// 上述命令会打印一次logs
docker container logs -f <id or Image name>
// 窗口保留会跟踪日志
docker attach <id or Image Name>
// 上述命令可以切换映射模式
docker container run -it ubuntu sh
// 开启交互模式
// 如果创建交互模式,且退出交互后不想停止容器,可以使用下述命令
docker container run -d -p 80:80 ubuntu // 先启用detached模式
docker exec -it ubuntu sh // 再转为交互模式
3.镜像获取方式
1.直接从docker hub社区拉取
2.Dockerfile构建一个镜像
3.自有文件导入
从docker hub上拉取镜像
docker image pull nginx:latest // 可以指定版本
docker image ls // 查看镜像列表
docker image inspect <iamge id> // 查看镜像详细信息
docker image rm <image id> // 删除镜像
镜像的导入和导出
docker image save nginx:latest -o nginx.image // 进入一个文件夹,导出nginx镜像
docker image load -i ./nginx.image // 导入本文件夹内的nginx镜像
今天就先了解到这里,明天继续更新~