首页 > 其他分享 >docker 执行dockerfile CMD

docker 执行dockerfile CMD

时间:2024-09-18 21:22:01浏览次数:12  
标签:容器 app CMD 指令 镜像 docker 执行 dockerfile

环境

centos7.9,dockerv25.0.4

方法


要执行 Dockerfile 中定义的 CMD 指令,你通常需要构建一个 Docker 镜像,然后运行一个基于该镜像的容器。CMD 指令在构建镜像时定义了容器启动时默认执行的命令。

下面举例使用容器执行命令的俩种方法:

# 使用官方 Python 运行时作为父镜像
FROM python:3.8-slim

# 设置工作目录
WORKDIR /app

# 复制当前目录内容到容器内的 /app 目录下
COPY . /app

# 安装 requirements.txt 中指定的任何需要的包
RUN pip install --no-cache-dir -r requirements.txt

# 使端口 80 可供应用程序使用
EXPOSE 80

# 定义环境变量
ENV NAME World

# 运行 app.py 当容器启动时
CMD ["python", "app.py"]

此处有俩个执行linux的命令一个是使用RUN方法,一个是使用CMD

俩者的区别在于

RUN 指令用于在构建镜像的过程中执行命令。这些命令通常用于安装软件包、创建文件或目录、设置环境变量等,是在镜像构建阶段执行的,执行的结果(例如安装的软件)会被永久地包含在最终的镜像中

CMD 指令提供了容器启动时默认执行的命令。它可以被 docker run 命令行参数覆盖,是在容器启动时执行,CMD 指令不会影响镜像本身,它只定义了容器启动时的行为

标签:容器,app,CMD,指令,镜像,docker,执行,dockerfile
From: https://blog.51cto.com/bomby/12049135

相关文章

  • docker pull 设置代理(一次设置/不需来回重启)
    背景dockerpull无法拉取,只能设置代理。而常规export对dockerpull无效,因实际docker调用的守护进程执行操作,dockerpull只负责传递消息。按照官方文档https://docs.docker.com/engine/daemon/proxy/,配置daemon.json,需要每次重启,且对容器内会有影响。既想在pull时走代理......
  • Failed to start docker.service — 完美解决方法详解 ️
    ......
  • PowerShell 命令来备份 Windows 10 的服务列表:CMD 批处理命令来备份 Windows 10 的服
    PowerShell命令来备份Windows10的服务列表:powershellCopyCodeGet-Service|Export-Csv-Path"C:\ServiceListBackup.csv"-NoTypeInformation这条命令会将所有服务信息导出到C:\ServiceListBackup.csv文件中。确保您有写入该路径的权限。CMD批处理命令来备份Windo......
  • cmd客户端
    cmd_client.c1#include<stdio.h>2#include<sys/socket.h>3#include<netinet/in.h>4#include<arpa/inet.h>5#include<string.h>6#include<unistd.h>7#include<stdlib.h>8#include<sys/types.h......
  • UDP实现cmd服务
    cmd_server.c/*编译:gcccmd_server.c-lpthread*/#include<stdio.h>#include<sys/socket.h>#include<netinet/in.h>#include<arpa/inet.h>#include<string.h>#include<unistd.h>#include<stdlib.h>#include<......
  • BookStack在线文档管理系统本地Docker部署与远程访问详细教程
    ......
  • zblogPHP后台在线升级后提示Call to undefined function Redirect_cmd_end()错误
    当Z-BlogPHP在线升级后提示“CalltoundefinedfunctionRedirect_cmd_end()”错误时,这通常是因为升级过程中某些文件没有正确更新或存在兼容性问题。以下是一些可能的解决步骤:1.检查函数定义问题描述:Redirect_cmd_end() 函数可能未被定义。解决方法:打开Z-BlogPHP......
  • docker 将进程内的文件复制到物理机路径
     在实际开发过程中,经常遇到使用docker部署数据库时  很多同学未将容器的路径跟服务器路径做一个映射,从而会导致很多问题出现,因此做个记录1.使用dockerps命令可以获取docker容器中所有正在运行的容器,如下图所示 2.运行 dockerexec-it8236262ad053/bin/bash  ......
  • Docker-compose安装MySQL8.0.39
    编写DockerfileFROMmysql:8.0.39ENVTZ=Asia/ShanghaiRUNln-sf/usr/share/zoneinfo/$TZ/etc/localtime&&echo$TZ>/etc/timezone编写docker-compose.yml,与Dockerfile在同目录中services:db:build:context:./image:mysql:8.0.39......
  • docker配置镜像加速器
    1.一键设置镜像加速:修改文件/etc/docker/daemon.json(如果不存在则创建)vi/etc/docker/daemon.json2.修改JSON文件更改为以下内容然后保存{"registry-mirrors":["https://docker.registry.cyou","https://docker-cf.registry.cyou","https://dockercf......