Docker镜像文件打包和启动简易教程-Buildx构建多平台镜像

这篇具有很好参考价值的文章主要介绍了Docker镜像文件打包和启动简易教程-Buildx构建多平台镜像。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Docker

1、创建Dockerfile

在目标文件夹下执行以下命令

touch Dockerfile

生成Dockerfile文件后,在其中写入

#基于的基础镜像
FROM python:3.7.15
#代码添加到code文件夹
ADD . /code
# 设置code文件夹是工作目录
WORKDIR /code
# 安装支持
RUN pip install -r requirements.txt # 运行程序需要的基础依赖
# 执行命令
CMD ["python", "/code/Environmental/run.py"] # 镜像文件执行的命令

2、镜像文件打包和启动

将本地Python项目打包成docker镜像,并在docker中运行 - 灰信网(软件开发博客聚合)

创建docker, .必不可少

docker build -t my_docker_name .  

保存打包的镜像文件

docker save -o /path/to/save/my_docker_name.tar my_docker_name:latest

命令行启动镜像文件

docker run --name my_container_name -itd -p 7010:6000 -v /opt/data:/opt/data my_docker_name:latest
# --name:命名启动的容器
# -itd:-i:以交互模式运行容器 -t:为容器重新分配一个伪输入终端 -d:后台运行容器 写在一起就是组合命令,-id -it -itd
# -p:-publish的缩写,用于开放端口, 7010:6000,将宿主机端口7010映射到容器端口6000
# -v:挂载目录,将宿主机的目录(前)挂载到容器内部的目录(后),这样宿主机目录和容器内的目录就互通.可以互相传输文件
#  容器目录不可以为相对路径;宿主机目录如果不存在,则会自动生成。可以挂载多个目录
# my_docker_name:要启动的镜像文件

compase启动镜像文件

  1. 首先写入一个docker_name.yaml文件
# yaml 配置
version: '3'
services:
  my_container: # 容器名称
    image: my_docker_name:latest # 启动的镜像文件
    container_name: my_container # 容器名称
    ports: # 端口映射
      - 7010:6000
    volumes: # 路径挂载
      - /opt/data:/opt/data"
  1. docker compose启动服务
docker-compose -f docker_name.yaml -d up
# docker-compose:Docker Compose 命令
# -f:指定要使用的 Docker Compose YAML 文件
# -d:以守护进程模式(后台运行)启动容器
# up:启动容器
  1. docker compose停止服务并删除容器
docker-compose -f docker_name.yaml -d down
# docker-compose:Docker Compose 命令
# -f:指定要使用的 Docker Compose YAML 文件
# -d:以守护进程模式(后台运行)启动容器
# down:停止并移除容器

3、删除IMAGE

停止所有的container,这样才能够删除其中的images:

docker stop $(docker ps -a -q)

如果想要删除所有container的话再加一个指令:

docker rm $(docker ps -a -q)

停止所有容器

docker container stop $(docker container ls -aq)

移除所有容器

docker container rm $(docker container ls -aq)

删除images

docker rmi my_docker_name 

4、docker常用指令

-a # 显示所有容器
-q # 只显示数字ID

https://www.cnblogs.com/jiyuchen1/p/16596526.html

Docker exec 命令 | 菜鸟教程

Docker 命令大全 | 菜鸟教程

查看当前镜像文件的日志

docker logs -f container_name

查看镜像分层

docker image inspect

5、使用Buildx构建多平台镜像

docker buildx是Docker的多架构构建工具,它可以帮助您在不同的处理器架构上进行跨平台构建。它是一个功能强大的工具,允许您使用单个命令构建多个平台的Docker镜像。

以下是使用docker buildx的一般步骤:

  1. 确保您已经安装了Docker,并且版本是19.03或更高版本。您可以通过运行docker version命令来验证。

  2. 确认是否已启用了experimental功能。docker buildx是一个实验性功能,需要将实验性功能设置为启用。您可以通过编辑~/.docker/config.json文件,将experimental设置为enabled,或者设置环境变量DOCKER_CLI_EXPERIMENTAL=enabled来启用它。

  3. 创建一个新的builder实例,使用docker buildx create命令创建一个新的构建器。例如,创建名为mybuilder的构建器:

docker buildx create --name mybuilder
  1. 切换到所创建的构建器中,使用docker buildx use命令。例如:
docker buildx use mybuilder
  1. 配置构建器以支持多个平台。您可以使用docker buildx inspect命令来查看当前构建器的配置,并使用docker buildx create命令的--platform选项来添加支持的平台。例如,为了支持Linux的ARM和x86_64架构:
docker buildx inspect --bootstrap
docker buildx create --use --platform linux/amd64,linux/arm64
  1. 构建跨平台的Docker镜像。您可以使用docker buildx build命令来构建镜像,与普通的docker build命令类似。唯一的区别是,您需要使用--builder选项指定构建器的名称。例如:
docker buildx build --builder mybuilder --platform linux/amd64,linux/arm64 -t your-image:tag . --load/--push

上述命令将会构建一个同时支持x86_64和ARM架构的镜像。

--load构建镜像文件,并导出到本地Docker images中。之后的保存、启动可以直接用docker指令

--push推送到仓库中

这样,您就可以使用docker buildx工具来构建跨平台的Docker镜像。它会自动根据指定的平台进行构建,并生成适用于不同架构的镜像。请记住,您仍然需要在目标架构的平台上才能运行相应的镜像。文章来源地址https://www.toymoban.com/news/detail-694991.html

到了这里,关于Docker镜像文件打包和启动简易教程-Buildx构建多平台镜像的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 项目打包docker镜像 | 上传nexus | jenkins一键构建

      Docker部署项目是指使用Docker容器化技术将应用程序及其依赖项打包成一个独立的、可移植的运行环境,并在各种操作系统和平台上进行部署和运行。   使用Docker的主要原因是解决了应用程序在不同环境中部署和运行的问题。传统上,应用程序在部署时需要考虑操作系统

    2024年02月09日
    浏览(48)
  • Maven打包构建Docker镜像并推送到仓库

    对于开发完成的服务要发布至服务器Docker时,我刚学习了解Docker时构建镜像方式是将我的本地服务先通过maven打包称为jar包,然后再上传至我的服务器上,通过Dockerfile将其构建成为镜像。后来才了解了直接通过maven命令直接打包构建的方式,以下是完成这一操作的步骤。 修改

    2024年02月05日
    浏览(66)
  • Idea使用Docker插件实现maven打包自动构建镜像

    Docker 开启TCP 服务 改写以下内容 重启服务 此时docker已经开放了2375端口,使用外部主机访问 http://docker:2375/info IDEA 集成Docker 安装Docker 插件 配置docker服务地址 点击view-services,打开docker的操作面板 双击docker01可以看到此docker服务下镜像和容器 右击docker镜像,可以创建新的容器,

    2024年02月10日
    浏览(51)
  • Docker打包容器并跨服务器传输重建加载load镜像Unable to find image :latest问题解决 及 Docker在容器未启动的情况下如何修改容器中文件

        使用docker就是因为docker可以快速进行多服务器部署,所以需要对部署好的环境进行打包复制并快速在其它的服务器上进行重建。     其实使用起来非常简单,使用docker export从运行的容器中导出文件,,使用import命令生成镜像批量传至目标服务器然后在目标服务器上进行

    2024年04月17日
    浏览(51)
  • Python项目打包, docker build构建docker镜像, Docker Compose (Docker编配)

    将本地Python项目打包构建docker镜像,并在docker中运行【流程1-8】 8、Docker Compose (Docker编配) 附录: 其他常用docker命令   2.2 下载python项目所需依赖包到指定文件夹py_pkgs:    在es-python文件夹下,新建一个Dockerfile文件: 5. 假设宿主机上已经装好docker, 此时切换到es-python路径下  

    2024年02月15日
    浏览(53)
  • IDEA整合Docker,一键打包服务镜像与启动容器

    尝试了IDEA整合Docker,坑有些多,但经过查阅资料都一一解决了,写了个案例,感觉这种方式确实要方便很多。下面来整理下步骤: 一、安装Docker 准备一台Linux,我这里用的是centos 7 mini 版,然后安装Docker 安装Device Mapper: 配置Docker的yum源: 更新yum缓存 安装Docker-ce 等待上述加

    2024年02月02日
    浏览(59)
  • Java(SpringBoot)项目打包(构建)成`Docker`镜像的几种方式

    前置说明 最为原始的打包方式 spring-boot-maven-plugin 插件 jib-maven-plugin 插件 dockerfle-maven-plugin 插件 最为原始的方式 也就是使用 Docker 的打包命令去打包,麻烦,我这里不多说。 spring-boot-maven-plugin插件打包 SpringBoot自己内置了一个 Docker 镜像打包工具,在 spring-boot-starter-parent 中,

    2024年02月02日
    浏览(54)
  • Docker入门教程:本地打包docker镜像

    Dockers是基于Go语言开发的虚拟容器技术。以前我们部署应用通常是将源代码打包成一个jar包运行,这样就会受到运行环境、配置环境的限制,而且程序也不能跨服务器运行。Docker基于Linux容器技术,将Java源代码、运行环境像MySQL、redis、jdk等通通打包成一个镜像,实现“一次镜

    2024年02月03日
    浏览(42)
  • 【jenkins】jenkins流水线构建打包jar,生成docker镜像,重启docker服务的过程,在jenkins上一键完成,实现提交代码自动构建的功能

     【jenkins】jenkins流水线构建打包jar,生成docker镜像,重启docker服务的过程,在jenkins上一键完成,实现提交代码自动构建,服务重启,服务发布的功能。一键实现。非常的舒服。 这是 shell脚本  脚本名称: startup.sh   本脚本的功能是在jenkins 构建完项目后,通过jar包生成dock

    2024年02月11日
    浏览(56)
  • Docker环境离线安装教程,附docker容器镜像打包,导出,导入加载镜像等

    (此方式在某些环境下可能不支持,如果不支持 请参考方式2) 下载文件:https://dn-dao-get.daocloud.io/docker/docker-1.13.0-centos-7.2.1511.tar.gz 上传,解压文件, 进入目录 执行 :bash install.sh 启动docker服务:service docker restart 下载地址:https://download.docker.com/linux/static/stable/x86_64/ 验证:

    2024年02月15日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包