首页 > 编程语言 >使用dockerfile构建python3的镜像并启动容器另一种方式

使用dockerfile构建python3的镜像并启动容器另一种方式

时间:2024-12-19 13:57:17浏览次数:6  
标签:bin install python yum usr && 镜像 dockerfile python3

使用dockerfile构建python3的镜像并启动容器另一种方式

1.新建目录Dockerfiles

mkdir Dockerfiles
cd Dockerfiles

2.新建文件Dockerfile

touch Dockerfile

写入以下内容:

FROM centos:7.6.1810
MAINTAINER test # 指定作者信息
RUN set -ex \
    # 预安装所需组件
    && yum install -y wget tar libffi-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make initscripts \
    && wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz \
    && tar -zxvf Python-3.7.0.tgz \
    && cd Python-3.7.0 \
    && ./configure prefix=/usr/local/python3 \
    && make \
    && make install \
    && make clean \
    && rm -rf /Python-3.7.0* \
    && yum install -y epel-release \
    && yum install -y python-pip
# 设置默认为python3
RUN set -ex \
    # 备份旧版本python
    && mv /usr/bin/python /usr/bin/python27 \
    && mv /usr/bin/pip /usr/bin/pip27 \
    # 配置默认为python3
    && ln -s /usr/local/python3/bin/python3.7 /usr/bin/python \
    && ln -s /usr/local/python3/bin/pip3 /usr/bin/pip
# 修复因修改python版本导致yum失效问题
RUN set -ex \
    && sed -i "s#/usr/bin/python#/usr/bin/python2.7#" /usr/bin/yum \
    && sed -i "s#/usr/bin/python#/usr/bin/python2.7#" /usr/libexec/urlgrabber-ext-down \
    && yum install -y deltarpm
# 基础环境配置
RUN set -ex \
    # 修改系统时区为东八区
    && rm -rf /etc/localtime \
    && ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
    && yum install -y vim \
    # 安装定时任务组件
    && yum -y install cronie
# 支持中文
RUN yum install kde-l10n-Chinese -y
RUN localedef -c -f UTF-8 -i zh_CN zh_CN.utf8
# 更新pip版本
RUN pip install --upgrade pip
ENV LC_ALL zh_CN.UTF-8

3.dockerfile构建镜像

docker build命令会创建一个镜像

  • -f:指定dockerfile文件
  • -t:指定镜像名称
    在Dockerfile文件目录下执行:
docker build -t python:37 .

4.启动容器

docker run 命令会创建一个名为python的容器

  • -i:互交模式
  • -t:终端模式
  • -d:后台启动
  • –name:容器名称,即后面的python
  • -v:资源卷映射,主机目录、文件映射到容器目录、文件
docker run -itd --name python --restart always --privileged=true -v /root/dockers/python:/root/python -v /root/dockers/python/cron:/var/spool/cron python:37 /usr/sbin/init

5.进入容器

docker exec -it python /bin/bash

6.退出容器

本方式为退出容器并不关闭容器

Ctrl+P+Q

标签:bin,install,python,yum,usr,&&,镜像,dockerfile,python3
From: https://blog.csdn.net/weixin_45014634/article/details/144526241

相关文章

  • Dodcker如何导入镜像tar
    Dodcker如何导入镜像tar我们可以将docker镜像导出为压缩文件,然后再在另一主机上导入。要在Docker中导入一个.tar格式的镜像文件,您可以使用dockerload命令。这个命令会将一个保存的镜像压缩文件(.tar,.tar.gz或.tgz)加载到Docker镜像库中。dockerload-i<image_name>.tar例如......
  • ERPNext version 15 虚拟机镜像下载
     虚拟机镜像ERPNEXTv15OVF镜像,可用VMWareWorkStation、VMWareFusion(Intel芯片)、vSphere/EXSI、MicrosoftHyper-V(通过SystemCenterVirtualMachineManager)、OracleVirtualBox虚拟机导入使用。虚拟机镜像下载:https://url43.ctfile.com/f/62348743-1433643665-14e4......
  • 阿里云服务器操作系统选哪个?镜像这么选就对了!
    阿里云服务器操作系统选哪个?镜像这么选就对了!阿里云服务器操作系统一般选哪个?镜像怎么选择?阿里云服务器操作系统选哪个比较好?镜像就是系统,阿里云操作系统支持免费更换。阿里云服务器操作系统镜像分为Linux和Windows两大类,Linux可以选择AlibabaCloudLinux,Windows可以选择Windows......
  • docker配置国内镜像2024.11.18更新
    根据最新的搜索结果,以下是一些国内可用的Docker镜像源配置,你可以按照以下步骤进行配置:创建或修改Docker配置文件:在Linux系统中,你需要修改或创建/etc/docker/daemon.json文件。如果文件不存在,你可以使用以下命令创建它:sudomkdir-p/etc/dockersudotee/etc/docker/daemon......
  • 基于知识图谱的医疗问答系统(dockerfile+docker-compose)
    目录一、搭建Neo4j图数据库1、方式选择2、Dockerfile+docker-compose部署neo4j容器2.1、更新yum镜像源2.2、安装docker-ce社区版2.3、配置镜像加速2.4、安装DockerCompose2.4.1、下载DockerCompose二进制包2.4.2、设置可执行权限2.4.3、查看版本2.5、创建目录结构2.6、......
  • 宝塔-docker拉取宝塔镜像,并运行宝塔镜像
    宝塔-拉取宝塔镜像,并运行镜像第1步:查询dockersearchbtpanel/baota此docker镜像由堡塔安全官方发布,镜像版本为宝塔面板9.2.0正式版和9.0.0_lts稳定版,镜像会随着宝塔面板更新。目前支持x86_64和arm架构可供下载使用版本:latest标签是9.2.0正式版,基于Debian12Do......
  • docker批量导入导出镜像
    批量导入镜像cat>images-load.sh<<-"EOF"#!/bin/bash#在此处填写镜像文件的保存目录script_dir=$(cd$(dirname$0);pwd)IMAGE_DIR=($script_dir/images-tar)i=0forIMAGEin`ls$IMAGE_DIR`doecho-e"正在导入镜像\033[33m$IMAGE\033[0m"docke......
  • docker镜像加速
    1.docker镜像加速docker镜像加速已失效,不知道未来某天会不会再次开放,日下镜像只能走梯子了,大家多保重。"live-restore":true #重启docker时不重启已启动的容器,布尔类型,不是字符串类型"data-root":"/data1/docker/", #docker数据目录"log-driver":"json-file", #......
  • centos8 升级 python3.10
    想要将Python3版本从已有的3.6.8升级到3.10,直接dnf安装发现找不到安装包,只能从源代码手动安装,以下是详细步骤:1.安装必要的依赖编译Python3.10需要一些开发工具和库:sudodnfgroupinstall"DevelopmentTools"-ysudodnfinstall-ygccopenssl-develbzip2-devellibffi......
  • NPM国内镜像源多选择与镜像快速切换工具(nrm)介绍
    多镜像源选择淘宝镜像(推荐)镜像地址:https://registry.npmmirror.com特性:官方推荐,镜像更新速度快,稳定性高。使用方式:npmconfigsetregistryhttps://registry.npmmirror.com恢复默认npmconfigsetregistryhttps://registry.npmjs.org华为云开源镜像镜像地址:ht......