首页 > 其他分享 >Docker 常用指令

Docker 常用指令

时间:2024-03-03 22:33:55浏览次数:16  
标签:src 常用 CMD 指令 context 镜像 Docker COPY

1. 指令

  • FROM

指定base镜像

  • MAINTAINER

设置镜像的作者,可以是任意字符串

  • COPY

将文件从build context 复制到镜像,COPY支持两种形式:COPY src dest 与 COPY ["src","dest"],src只能指定build context 中的文件或目录

  • ADD

与COPY类似,从build context复制文件到镜像。不同的是,如果src是归档文件(tar,zip,tgz,xz等),文件会被自动解压到dest

  • ENV

设置环境变量,环境变量可被后边的指令使用,如

ENV MY_VERSION 1.3
RUN apt-get install -y mypackage=$MY_VERSION
  • EXPOSE

指令容器中的进程会监听某个端口,Docker可以将改端口暴露出来

  • VOLUME

将文件或目录声明为volume

  • WORKDIR

RUN、CMD、ENTRYPOINT、ADD、COPY指令设置镜像中的当前工作目录

  • RUN

在容器中运行指令的命令

  • CMD

容器启动时运行指定的命令,Dockerfile中可以有多个CMD指令,但只有最后一个生效,CMD可以被docker run 之后的参数替换

  • ENTRYPOINT

设置容器启动时运行的命令,Dockerfile中可以有多个ENTRYPOINT指令,但只有最后一个生效,CMD 或 docker run 之后的参数会被当做参数传递给ENTRYPOINT

2. 特别说明

  • Dockerfile 支持以#开头的注释
  • build context指的是用户指定的目录,可以是.或者其他目录

标签:src,常用,CMD,指令,context,镜像,Docker,COPY
From: https://www.cnblogs.com/ccblblog/p/18050899

相关文章

  • linux指令:dpkg和apt
    dpkg是debian包管理器,一般来说用于管理已下载好的deb包1.安装指令dpkg-i<路径下的包名> 2.列出路径下的包及其状态dpkg-l其中前面两个代表状态的字母分别是包的期望状态和当前状态 也可以在-l之后加上关键词筛选 3.删除指定的包dpkg-r<路径下的包名>......
  • 内置常用函数
    Python的内置函数Python提供了一系列的内置函数,可以直接使用,无需导入任何模块。abs:绝对值函数print(abs(-1))#输出:1print(abs(100))#输出:100round:四舍五入"""这种舍入方式的目的是为了使舍入后的结果更加公平和一致。当小数部分为.5时,它有可能靠近两个整数,即......
  • 使用 docker-compose 部署 Jenkins
    Jenkins是一款非常流行的开源持续集成工具,广泛用于项目开发,具有自动化构建、测试和部署等功能。有关Jenkins的详细介绍,可以查看官网:https://www.jenkins.io本篇博客主要介绍如何通过docker-compose快速部署Jenkins工具,也让大家避免踩坑我的CentOS7虚拟机ip地址是1......
  • python接口自动化系列(05):获取常用变量
     本系列汇总,请查看这里:https://www.cnblogs.com/uncleyong/p/18033074实现目标获取常用变量,方便后面解析初始化sql或者请求参数的时候将常用变量占位符替换为实际值。 添加常用变量数据文件data目录下创建variable.yaml 内容:---'#{username}':tester'#{password_......
  • linux指令:chmod
    全名changemode改变文件的权限语法:chmod<object+mod><file> 其中mod可以是读(r)写(w)执行(x)等权限,object表示对什么对象(所有,a;同一组成员,g;所有者,u;其他,o)进行权限改变例子:chmodg+w,g-r1.txt表示对1.txt修改操作:在同一用户组下赋予(+)写(w)的权限,但去除(-)读......
  • Linux安装Docker并搭建MySql、Redis、RabbitMQ
    1.1安装docker(1)删除老版本sudoyumremovedocker\docker-client\docker-client-latest\docker-common\docker-latest\docker-latest-logrotate\......
  • Docker启动MySQL容器自动停止问题
    可能是mysql使用的内存过多,导致系统杀死了对应的进程mysql启动后设置限制内存在宿主机任意位置下:vimdocker.cnf写入:skip-host-cacheskip-name-resolveperformance_schema_max_table_instances=400table_definition_cache=400table_open_cache=256performance_......
  • docker 安装与使用
    docker安装与使用安装ubuntu解决Windows和VMware中的ubuntu22.04两者之间不可以复制、粘贴的问题sudoapt-getautoremoveopen-vm-toolssudoapt-getinstallopen-vm-tools-desktopsudoreboot更新Ubuntusudoaptupdatesudoaptupgradesudoaptfull-upgrade添......
  • Docker应用程序打包和分发的最佳实践
    1、使用多阶段构建:对于复杂的应用程序,可以使用多个阶段来构建Docker镜像。每个阶段可以专注于特定的任务,从而提高构建速度和镜像大小。2、最小化镜像大小:使用合适的基础镜像,并确保只安装必需的依赖项。可以使用多阶段构建和镜像分层来减小镜像的大小,并提高镜像的可维护性和可重复......
  • Redis的常用数据类型与操作
    Redis简介Redis是一个基于内存的key-value结构数据库(内存存储)(键值对)Mysql是将数据,是通过数据文件的方式存放在磁盘上(磁盘存储)(二维表)Redis特点抢购秒杀,或者新闻热点,大量的用户去访问的数据,就适合存放在Redis中,是对mysql的补充,往往项目中是和mysql共存的状态redis进行cmd命令......