Docker的用法

镜像与容器 概念介绍

在这里插入图片描述
在这里插入图片描述

docker:管理镜像和容器
docker
docker 入门教程

理解docker

  • 目的:给我们提供了一个完整的环境:(自带的小系统)
  • 镜像image: 一个小系统 的模板(class);
  • 容器container:镜像的实例化 --> 我们就可以直接取用它了;
  • dockerfile: 用于创建镜像
  • docker:是一个软件,管理以上三项;
  • 镜像是可以保存的,就可以不用每次都run dockerfile了。

一些重要网站

docker 官网
docker github
docker guide page
[dockerfile]https://www.runoob.com/docker/docker-dockerfile.html
docker 命令查询
dockerfile 命令查询

#得到image的几种方法
方法1:docker pull # 拉取仓库的镜像
方法2:docker commit # 保持 container 的当前状态到image后,然后生成对应的 image
方法3:docker build # 使用dockerfile 文件自动化制作 image

常用的doker 指令

  • docker 显示docker 的command
  • docker command --help # 查询每条指令的用法
  • docker pull <image_name> # 直接拉取镜像
  • docker images / docker image list # 查看镜像
  • docker search #查询有哪些镜像
  • docker run -it <镜像名> /bin/bash # 从镜像 启动一个容器
  • exit # 退出容器 --> 不是关闭
  • docker ps -a # 查看所有容器(包含已经关闭的容器)
  • docker ps # 查看已经启动的容器
  • docker stop <container_id/name>
  • docker start <container_id/name> --> 并不意味着你连上它了
  • docker exec -it <container_id/name> bash # 重新连接上了docker
  • docker rm <container_id/name> # 删除容器:一定是在容器stop 时候删除
  • docker rmi <image_id/name> # 删除镜像
  • docker commit <container_id/name> <image_name:tag> # 把一个容器重新存为镜像
  • docker push <image_name> # 推送镜像到hub中
  • docker login 登录hub
  • docker tag # 重新打标签

用 container 部署

  1. 裸服务器部署
    docker run -d -P training/webapp python app.py
    服务器裸部署:直接run 这一行代码 就启动了一个服务

jenkins自动化部署

管理一个 github(有我们的代码和dockerfile构建工具)

自动的拉取我们的代码,利用dockerfile 在服务器上完成环境的搭建,

dockerfile里 最后会有一个CMD [“python”, “app.py”]

常用dockerfile 指令

  • RUN 构建镜像时运行的指定命令
  • CMD 运行容器时默认执行的命令,如果有多个CMD质量,最后一个生效。
    当使用 docker run 命令启动容器时,可以覆盖 CMD 指令中的命令。
  • FROM 指明当前的镜像基于哪个镜像构建
  • LABEL 标记镜像信息,添加元数据
  • ARG 定义构建镜像过程中使用的变量
  • ENV 指定环境变量
  • VOLUME 创建一个数据卷挂载点
  • USER 指定运行容器时的用户名或 UID
  • WORKDIR 配置工作目录
  • EXPOSE 容器运行时的端口,默认是TCP
  • ADD 从本地或URL添加文件或压缩包到镜像中,并自动解压
  • COPY 拷贝文件或目录到镜像中
  • ONBUILD 创建子镜像时指定自动执行的操作指令
  • SHELL 指定默认 shell 类型
  • ENTRYPOINT 指定镜像的默认入口命令

使用dockerfile构建镜像

# 使用 Python 3.7 作为基础镜像
FROM python:3.7***
# 设置工作目录
WORKDIR /app
# 复制应用程序代码到容器中
COPY . .

# 安装所需的 Python 库
RUN pip install -r requirements.txt

# 暴露应用程序端口
EXPOSE 5000

# 启动应用程序
CMD ["python", "app.py"]

docker build . 从上述dockerfile中创建镜像
XPOSE 5000

启动应用程序

CMD [“python”, “app.py”]

**docker build . 从上述dockerfile中创建镜像**
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值