首页 > 其他分享 >docker镜像构建libreoffice转换文件

docker镜像构建libreoffice转换文件

时间:2024-09-10 16:35:35浏览次数:11  
标签:non aliyun free apt && 镜像 libreoffice docker com

具体需求:

根据Libreoffice最新版本,创建一个容器环境,用于文件不同类型的转换

# 使用阿里云的Python镜像
FROM dockerpull.com/python:3.9-slim

# 设置工作目录
WORKDIR /app

# 更新debian系统的APT源列表为阿里
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get clean && \
    echo 'deb https://mirrors.aliyun.com/debian/ bookworm main non-free non-free-firmware contrib' > /etc/apt/sources.list && \
    echo 'deb-src https://mirrors.aliyun.com/debian/ bookworm main non-free non-free-firmware contrib' >> /etc/apt/sources.list && \
    echo 'deb https://mirrors.aliyun.com/debian-security/ bookworm-security main' >> /etc/apt/sources.list && \
    echo 'deb-src https://mirrors.aliyun.com/debian-security/ bookworm-security main' >> /etc/apt/sources.list && \
    echo 'deb https://mirrors.aliyun.com/debian/ bookworm-updates main non-free non-free-firmware contrib' >> /etc/apt/sources.list && \
    echo 'deb-src https://mirrors.aliyun.com/debian/ bookworm-updates main non-free non-free-firmware contrib' >> /etc/apt/sources.list && \
    echo 'deb https://mirrors.aliyun.com/debian/ bookworm-backports main non-free non-free-firmware contrib' >> /etc/apt/sources.list && \
    echo 'deb-src https://mirrors.aliyun.com/debian/ bookworm-backports main non-free non-free-firmware contrib' >> /etc/apt/sources.list && \
    apt-get update

# 安装基础编译环境等依赖
RUN apt-get install -y --no-install-recommends build-essential libeigen3-dev gcc libmariadb-dev && \
    rm -rf /var/lib/apt/lists/*

# 安装LibreOffice(使用阿里云的APT源)
RUN apt-get update && \
apt-get install -y --no-install-recommends libreoffice && \
rm -rf /var/lib/apt/lists/*

# 拷贝应用代码, 当前dockerfile所在路径下的所有文件到当前的工作目录中
COPY . .

# 安装Python依赖 根据当前路径下的requirements.txt
RUN pip install --no-cache-dir -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/

# 暴露端口
EXPOSE 5000

# 运行主程序
CMD ["sh", "start.sh"]

docker-compose

version: '3'

services:
  ppt2pdf_service:
    image: ppt2pdf:latest
    container_name: ppt2pdf
    restart: always
    # environment:
    #   - ENV_VAR_NAME=value
    # volumes:
    #   - ./host/path:/container/path
    ports:
      - "3690:5000"
    networks:
      - ppt2pdf_network

networks:
  ppt2pdf_network:
    driver: bridge

标签:non,aliyun,free,apt,&&,镜像,libreoffice,docker,com
From: https://www.cnblogs.com/mappleyan/p/18406685

相关文章

  • docker
    Docker的基础原理SaaS提供给客户的服务是运营商运行在云计算基础设施上的应用程序,用户可以在各种设备上通过过客户端界面访问,如浏览器。消费者不需要管理或控制任何云计算基础设施,包括网络、服务器、操作系统、存储等等;平时使用的邮件服务器,即属于SaaS服务。PaaS提供给消......
  • Docker
    容器化技术解决了一个关键问题:它将软件程序和运行的基础环境分开。可移植性;占地小;共享bin和libDocker本身不是容器,它是创建容器的工具,是应用容器引擎。Docker镜像是一个特殊的文件系统。它除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些......
  • Docker 容器与数据卷
    上一篇启动registry的时候,用了-v和--privileged参数,本文就讲解这两个参数的含义‍privileged参数在CentOS7中,安全模块会比之前系统版本加强,不安全的行为会先禁止,而目录挂载的情况被默认为不安全的行为,因此我们在启动私服的时候,可能会被禁止,报错cannotopendirectory......
  • docker 容器的常用命令
      docker容器的常用命令 一、基础概念 1、容器 (1)容器狭义的讲就是盛放东西的器皿,比如锅、碗、瓢、盆,再比如数组、字符串等,Java集合框架中列表、集、散列映射等也是容纳数据的容器。 (2)容器广义上讲是包含容器管理器、实际盛放数据的器皿在内的软件,比如docker就是一款......
  • Docker Compose 案例
    version:'3.8'x-app:&appbuild:dockerfile:./Dockerfilerestart:unless-stoppedworking_dir:/appvolumes:-.:/app/oms-odoo#将本地的app目录挂载到容器的/app目录-./log:/var/log#environment:#-REDIS_URL=redis://host.......
  • 本地服务调用容器(docker)注册至nacos&dubbo服务
    1.问题背景开发人员通过本地启动服务注册到nacos,调用通过容器注册到nacos的服务失败; 2.问题解决  step1:指定网络模式为主机模式(network=host)  step2:    增加暴露端口(port=xxx)  step3:    指定dubbo服务注册到注册中心的ip+port(du......
  • docker Get "https://registry-1.docker.io/v2/": x509: certificate is valid for
    前言docker在进行build时,报错:Get"https://registry-1.docker.io/v2/":x509:certificateisvalidfor问题原因:Docker客户端无法验证DockerHub服务器的SSL/TLS证书解决在/etc/docker/daemon.json中新增国内镜像源:"registry-mirrors":["https:/......
  • Ubuntu设置科大镜像源
    修改Ubuntu的镜像源为中科大镜像源1、首先使用以下命令备份现有的镜像源:sudocpetc/apt/sources.listetc/apt/sources.list.bak2、使用以下命令打开镜像源文件:sudovim/etc/apt/sources.list3、在vim插入模式下使用以下内容替换掉原镜像源文件sources.list中的内容:debhtt......
  • docker 笔记
    1.把自己的jdk打包成镜像假设我们安装的jdk位置在/usr/local/app/jdk此时我们需要在app目录下建Dockerfile文件,代码如下#基础镜像FROMcentos:7.9.2009#维护者信息MAINTAINERYourName<[email protected]>#设置环境变量ENVJAVA_HOME/app/jdkENVPATH$JAVA_......
  • flask-docker更新(mysql更新为容器)
    前言之前用docker编写了一个flask的简单demo,但是里面的mysql用的本地的,当时是自己偷懒用了本地的,现在空余时间重新处理了mysql容器重新更新一下一、docker-compose.yml示例version:'3'services:flask:build:context:./appcontainer_name:flask......