首页
Linux常用
docker常用
关于
Search
1
docker安装MDCX
180 阅读
2
UNRAID增加和缩小虚拟机虚拟磁盘大小
48 阅读
3
unraid添加iSCSI 发起程序
39 阅读
4
iStoreOS上使用WireGuard
20 阅读
5
docker安装WireGuard Easy
13 阅读
默认分类
docker
容器安装
Linux
数据库
群辉
软路由
unRAID
PVE
Nginx
wow
杂项
图床
飞牛
转载微信公众号文章
Docker学习
Linux学习
登录
Search
标签搜索
nginx
unraid
PVE
wow服务器
装机硬件
宏
v2ray
直通
电视盒子
相册
黑裙7.0.1
远程穿透
定时
ssh
emby
symlink
软链接
Linux
sftp
防火墙
奥黛丽·逐爱者
累计撰写
100
篇文章
累计收到
10
条评论
首页
栏目
默认分类
docker
容器安装
Linux
数据库
群辉
软路由
unRAID
PVE
Nginx
wow
杂项
图床
飞牛
转载微信公众号文章
Docker学习
Linux学习
页面
Linux常用
docker常用
关于
搜索到
24
篇与
docker
的结果
2025-06-28
Kylin V10 SP2 ARM64 系统上构建一个包含 Tomcat 的 Docker 镜像
下载好jdk包确保当前目录有 jdk-8u441-linux-aarch64.tar.gz# 使用通用的 ARM64 基础镜像(推荐 alpine 或 debian,体积更小) FROM arm64v8/ubuntu:20.04 # 或者如果你必须用 Kylin 用户态环境,可以从本地导入: # FROM kylin:v10-sp2-arm64 # 设置环境变量 ENV JAVA_HOME /usr/local/jdk1.8.0_441 ENV CATALINA_HOME /usr/local/tomcat ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin # 安装必要工具(Ubuntu 用 apt,Kylin 用 yum) RUN apt-get update && \ apt-get install -y wget tar && \ rm -rf /var/lib/apt/lists/* # 复制 ARM64 版 JDK(必须匹配宿主架构!) COPY jdk-8u441-linux-aarch64.tar.gz /tmp/ RUN tar -xzf /tmp/jdk-8u441-linux-aarch64.tar.gz -C /usr/local/ && \ rm /tmp/jdk-8u441-linux-aarch64.tar.gz # 下载 Tomcat(无需区分架构) RUN wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.106/bin/apache-tomcat-9.0.106.tar.gz && \ tar -xzf apache-tomcat-9.0.106.tar.gz -C /usr/local/ && \ mv /usr/local/apache-tomcat-9.0.106 $CATALINA_HOME && \ rm apache-tomcat-9.0.106.tar.gz # 安全加固:创建专用用户 RUN groupadd -r tomcat && \ useradd -r -g tomcat -d $CATALINA_HOME -s /bin/false tomcat && \ chown -R tomcat:tomcat $CATALINA_HOME # 暴露端口 EXPOSE 8080 # 以非 root 用户运行 USER tomcat WORKDIR $CATALINA_HOME CMD ["catalina.sh", "run"]构建镜像docker build -t tomcat-arm64:9.0.106 .
2025年06月28日
2 阅读
0 评论
0 点赞
2025-06-28
python的docker镜像构建(麒麟v10sp2arm64)
优化后的 DockerfileFROM python:3.10.11-slim WORKDIR /app # 设置环境变量抑制警告 ENV PIP_ROOT_USER_ACTION=ignore \ PYTHONUNBUFFERED=1 # 使用国内镜像源 RUN sed -i 's|deb.debian.org|mirrors.aliyun.com|g' /etc/apt/sources.list && \ sed -i 's|security.debian.org|mirrors.aliyun.com/debian-security|g' /etc/apt/sources.list # 安装系统依赖 RUN apt-get update && apt-get install -y --no-install-recommends \ wkhtmltopdf \ fonts-wqy-zenhei \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* # 复制预下载的wheel文件 COPY wheels/*.whl /tmp/wheels/ # 安装Python依赖(不升级pip) RUN pip install --no-cache-dir \ --index-url https://mirrors.aliyun.com/pypi/simple/ \ /tmp/wheels/*.whl \ && rm -rf /tmp/wheels # 验证安装 RUN python -c "import flask, pdfkit; print('验证通过')" CMD ["python"]{lamp/}wheels目录内的文件requirements.txt列表asgiref==3.8.1 blinker==1.9.0 click==8.1.8 Django==4.2.23 Flask==3.1.1 importlib_metadata==8.7.0 itsdangerous==2.2.0 Jinja2==3.1.6 MarkupSafe==3.0.2 numpy==2.0.2 pandas==2.3.0 python-dateutil==2.9.0.post0 pytz==2025.2 six==1.17.0 sqlparse==0.5.3 typing_extensions==4.14.0 tzdata==2025.2 Werkzeug==3.1.3 zipp==3.23.0 pdfkit==1.0.0 requests==2.32.3 pypdf2==3.0.1==============================================已验证成功的ARM64版本 (2025-07-04)特点:1. 基于python:3.10.11-slim-buster-linuxarm642. 使用阿里云Debian源和清华pip源3. 包含wkhtmltopdf ARM64版完整安装4. 包含所有Python依赖项构建命令:docker build -t your-app:arm64 .==============================================FROM python:3.10.11-slim-buster-linuxarm64 WORKDIR /app # 阿里云Debian源 RUN sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list && \ sed -i 's/security.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list # 安装系统依赖 RUN apt-get update && apt-get install -y --no-install-recommends \ ca-certificates \ xfonts-75dpi \ xfonts-base \ fontconfig \ libjpeg62-turbo \ libx11-6 \ libxext6 \ libxrender1 \ xfonts-utils \ fonts-wqy-zenhei \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* # 安装wkhtmltopdf COPY wkhtmltopdf.deb /tmp/ RUN apt-get update && \ apt-get install -y /tmp/wkhtmltopdf.deb --no-install-recommends \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* /tmp/wkhtmltopdf.deb \ && ln -s /usr/local/bin/wkhtmltopdf /usr/bin/wkhtmltopdf # 验证wkhtmltopdf安装 RUN which wkhtmltopdf && wkhtmltopdf --version # 清华pip源 RUN pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple # 安装Python依赖 COPY wheels/*.whl /tmp/wheels/ ENV PIP_ROOT_USER_ACTION=ignore RUN pip install --no-cache-dir --upgrade pip && \ pip install --no-cache-dir \ /tmp/wheels/*.whl \ psutil==7.0.0 \ MarkupSafe==3.0.2 \ charset-normalizer==3.4.2 \ asgiref==3.8.1 \ Django==4.2.23 \ importlib_metadata==8.7.0 \ numpy==2.0.2 \ pandas==2.3.0 \ python-dateutil==2.9.0.post0 \ pytz==2025.2 \ six==1.17.0 \ sqlparse==0.5.3 \ typing_extensions==4.14.0 \ tzdata==2025.2 \ zipp==3.23.0 \ pypdf2==3.0.1 # 验证中文字体 RUN fc-list :lang=zh ENV PYTHONUNBUFFERED=1 CMD ["python"]
2025年06月28日
2 阅读
0 评论
0 点赞
2025-06-24
python Dockerfile构建(含中文字体支持)
基于 python:3.10.11-slim 构建带依赖的 Docker 镜像FROM python:3.10.11-slim WORKDIR /app # 安装系统依赖(使用小写包名,并确保正确换行) RUN apt-get update && apt-get install -y --no-install-recommends \ wkhtmltopdf \ fonts-liberation \ fonts-wqy-zenhei \ xfonts-75dpi \ xfonts-base \ libaio1 \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* # 复制wheel文件 COPY wheels/*.whl /tmp/wheels/ # 设置pip不警告root用户 ENV PIP_ROOT_USER_ACTION=ignore # 安装Python依赖 RUN pip install --no-cache-dir --upgrade pip && \ pip install --no-cache-dir \ /tmp/wheels/werkzeug-3.1.3-py3-none-any.whl \ /tmp/wheels/urllib3-2.4.0-py3-none-any.whl \ /tmp/wheels/requests-2.32.3-py3-none-any.whl \ /tmp/wheels/pdfkit-1.0.0-py3-none-any.whl \ /tmp/wheels/jinja2-3.1.6-py3-none-any.whl \ /tmp/wheels/itsdangerous-2.2.0-py3-none-any.whl \ /tmp/wheels/idna-3.10-py3-none-any.whl \ /tmp/wheels/flask-3.1.1-py3-none-any.whl \ /tmp/wheels/colorama-0.4.6-py2.py3-none-any.whl \ /tmp/wheels/click-8.2.0-py3-none-any.whl \ /tmp/wheels/certifi-2025.4.26-py3-none-any.whl \ /tmp/wheels/blinker-1.9.0-py3-none-any.whl \ psutil==7.0.0 \ MarkupSafe==3.0.2 \ charset-normalizer==3.4.2 \ cx_Oracle==8.3.0 # 验证字体安装 RUN fc-list :lang=zh # 验证wkhtmltopdf RUN wkhtmltopdf --version ENV PYTHONUNBUFFERED=1 CMD ["python"]
2025年06月24日
2 阅读
0 评论
0 点赞
2025-04-10
docker安装WireGuard Easy
生成 bcrypt 哈希以下是关于生成 bcrypt 哈希值(用于设置 Web 管理面板的登录密码)的正确教程及注意事项,参考了 wg-password (wgpw) 工具的官方说明。使用 Docker 生成哈希:运行以下命令执行(执行完毕自动销毁),替换 YOUR_PASSWORD 为您想设置的密码:docker run --rm -it ghcr.io/wg-easy/wg-easy wgpw YOUR_PASSWORD示例:如果密码为 mypassword123,运行:docker run --rm -it ghcr.io/wg-easy/wg-easy wgpw mypassword123输出结果:PASSWORD_HASH='$2b$12$coPqCsPtcFO.Ab99xylBNOW4.Iu7OOA2/ZIboHN6/oyxca3MWo7fW'拉取并运行 WireGuard Easy使用以下命令启动 WireGuard Easy:docker run --detach \ --name wg-easy \ --env WG_HOST=<你的服务器公网 IP 或域名> \ --env PASSWORD_HASH='<管理员密码的 bcrypt 哈希>' \ --env WG_PORT=51820 \ --env PORT=51821 \ --volume ~/.wg-easy:/etc/wireguard \ --publish 51820:51820/udp \ --publish 51821:51821/tcp \ --cap-add NET_ADMIN \ --cap-add SYS_MODULE \ --sysctl 'net.ipv4.conf.all.src_valid_mark=1' \ --sysctl 'net.ipv4.ip_forward=1' \ --restart unless-stopped \ ghcr.io/wg-easy/wg-easyWG_HOST:设置为云服务器的公网 IP 或动态域名。PASSWORD_HASH:设置管理员 Web 面板登录密码的 bcrypt 哈希值(详见生成 bcrypt 哈希部分)。PORT:设置 Web 管理界面的端口号(默认 51821)。WG_PORT:设置 WireGuard 的监听端口(默认 51820)。--volume:指定配置文件存储路径。--publish:映射服务器端口到容器。--cap-add 和 --sysctl:确保容器具备必要的网络权限。访问 Web 管理界面启动后,Web 管理界面可通过以下地址访问:http://<你的服务器 IP>:51821Windows 客户端下载version: '3.8' services: wg-easy: image: ghcr.io/wg-easy/wg-easy container_name: wg-easy restart: unless-stopped environment: - WG_HOST=xxxx.cn - PASSWORD_HASH=ssssssssssHnL3y8.KmIwVtOpOgXwIbve4HG/iYOWXGm.mZGybyNB52 - WG_PORT=56800 - PORT=56801 volumes: - /mnt/user/appdata/wg-easy:/etc/wireguard ports: - "56800:56800/udp" - "56801:56801/tcp" cap_add: - NET_ADMIN - SYS_MODULE sysctls: - net.ipv4.conf.all.src_valid_mark=1 - net.ipv4.ip_forward=1
2025年04月10日
13 阅读
0 评论
0 点赞
2025-01-03
媒体自动化
version: "2.1" services: cloudnas: image: cloudnas/clouddrive2 container_name: clouddrive2-compose environment: - TZ=Asia/Shanghai - CLOUDDRIVE_HOME=/Config volumes: - /mnt/cache/appdata/clouddirve2/CloudNAS:/CloudNAS:shared - /mnt/cache/appdata/clouddirve2/Config:/Config - /mnt/user/media:/media:media devices: - /dev/fuse:/dev/fuse restart: unless-stopped pid: "host" privileged: true network_mode: "host" moviepilot: image: jxxghp/moviepilot-v2 container_name: moviepilot-v2 volumes: - /mnt/user/media:/media - /mnt/user/download:/download - /mnt/cache/appdata/clouddirve2/CloudNAS:/CloudNAS - /mnt/cache/appdata/moviepilot/config:/config - /mnt/cache/appdata/moviepilot/core:/moviepilot/.cache/ms-playwright - '/var/run/docker.sock:/var/run/docker.sock:ro' environment: - NGINX_PORT=3000 - MOVIEPILOT_AUTO_UPDATE = false - PUID=0 - PGID=0 - UMASK=022 - TZ=Asia/Shanghai - SUPERUSER=admin - PROXY_HOST=http://192.168.0.254:7890 - AUTH_SITE=audiences,zmpt - AUDIENCES_UID=14651 - AUDIENCES_PASSKEY=f05fdb706a793138ce391ec68b978627 - ZMPT_UID=16445 - ZMPT_PASSKEY=3f17fe3c7746e70c926cb2d73430e59d network_mode: bridge restart: always ports: - 8760:3000 privileged: true emby: image: emby/embyserver container_name: emby network_mode: bridge environment: - UID=0 - GID=0 - GIDLIST=0 - TZ=Asia/Shanghai # - NO_PROXY=172.17.0.1,127.0.0.1,localhost # - ALL_PROXY=http://192.168.100.208:7890 # - HTTP_PROXY=http://192.168.100.208:7890 volumes: - /mnt/cache/appdata/EmbyServer:/config - /mnt/user/media:/Media - /mnt/cache/link:/link - /mnt/cache/appdata/clouddirve2/CloudNAS:/mnt/cache/appdata/clouddirve2/CloudNAS - /mnt/cache/backup/emby_backup:/backup ports: - 8096:8096 devices: - /dev/dri:/dev/dri restart: unless-stopped auto_symlink: image: shenxianmq/auto_symlink:latest container_name: auto_symlink network_mode: bridge environment: - TZ=Asia/Shanghai volumes: - /mnt/cache/appdata/auto_symlink/config:/app/config - /mnt/user/media:/Media - /mnt/cache/link:/link - /mnt/cache/appdata/clouddirve2/CloudNAS:/mnt/cache/appdata/clouddirve2/CloudNAS - /mnt/cache/backup/link_backup:/app/backup ports: - 8095:8095 user: 0:0 restart: unless-stopped媒体自动化编排模板转至微信公众号 影视自动化version: '3' # === 全局配置 === networks: media_network: driver: bridge ipam: config: - subnet: 172.28.0.0/16 # === 服务定义 === services: # 1. Prowlarr - 电影元数据服务 prowlarr: image: linuxserver/prowlarr:latest container_name: prowlarr ports: - "9696:9696" environment: - PUID=1000 - PGID=100 - TZ=Asia/Shanghai volumes: - /config:/config restart: always networks: - media_network # 2. Sonarr - 电视剧管理 sonarr: image: linuxserver/sonarr:latest container_name: sonarr ports: - "8989:8989" environment: - PUID=1000 - PGID=100 - TZ=Asia/Shanghai volumes: - /config:/config - /downloads:/downloads - /media:/media restart: always networks: - media_network # 3. Radarr - 电影下载管理 radarr: image: linuxserver/radarr:latest container_name: radarr ports: - "7878:7878" environment: - PUID=1000 - PGID=100 - TZ=Asia/Shanghai volumes: - /downloads:/downloads - /media:/media - /config:/config restart: always networks: - media_network # 4. Flaresolverr - 下载链接解析工具 flaresolverr: image: flaresolverr/flaresolverr:latest container_name: flaresolverr ports: - "8191:8191" - "8192:8192" restart: always networks: - media_network # 5. qBittorrent - BT下载客户端 qbittorrent: image: linuxserver/qbittorrent:latest container_name: qbittorrent ports: - "52000:52000" - "52000:52000/udp" - "8080:8080" environment: - PUID=1000 - PGID=100 - TZ=Asia/Shanghai volumes: - /downloads:/downloads - /config:/config restart: always networks: - media_network # 6. chinesesubfinder - 字幕自动下载 chinesesubfinder: image: allanpk716/chinesesubfinder:latest container_name: chinesesubfinder ports: - "19035:19035" environment: - PUID=1000 - PGID=100 - TZ=Asia/Shanghai volumes: - /config:/config - /media:/media restart: always networks: - media_network # 7. Tiny Media Manager (v4) - 元数据管理 tinymediamanager: image: dzhuang/tinymediamanager:latest-v4 container_name: tinymm restart: always ports: - "5800:5800" # Web界面端口 environment: - TZ=Asia/Shanghai - USER_ID=1000 - GROUP_ID=100 - ENABLE_CJK_FONT=1 # 支持中文字体 volumes: - /media:/media # 媒体文件目录(与Sonarr/Radarr共享) - /config:/config # 配置目录 networks: - media_network
2025年01月03日
8 阅读
0 评论
0 点赞
1
2
...
5