使用Docker搭建Mox Mail 邮局

介绍 Mox Mail 是一个开源的邮件服务器解决方案,用于收发电子邮件。支持 IMAP4、SMTP、SPF、DKIM、DMARC、MTA-STS、DANE 和 DNSSEC,基于信誉和基于内容的垃圾邮件过滤,国际化(EIA/IDNA),使用 ACME 和 Let’s Encrypt 自动 TLS,帐户自动配置,网页邮件。 ...

2026年1月29日 · 4 分钟 · 浅忆

docker login 执行之后的影响

当执行 docker login xxx.xxx.xxx 命令后,Docker 客户端会尝试登录到指定的镜像仓库 xxx.xxx.xxx,并提示输入用户名和密码(如果该仓库需要身份验证)。成功登录后,Docker 会将登录凭证存储在本地(通常在 ~/.docker/config.json 文件中),以便后续操作(如拉取镜像或推送镜像)可以自动使用这些凭证。 对拉取镜像的具体变化 执行 docker login xxx.xxx.xxx 后,拉取镜像时的变化取决于以下几个方面: 访问私有镜像 如果 xxx.xxx.xxx 是一个私有镜像仓库,并且之前没有登录,那么在登录之前尝试拉取该仓库中的私有镜像会失败(通常会收到 unauthorized: authentication required 的错误)。登录成功后,可以拉取该仓库中有权限访问的私有镜像。例如: 1 docker pull xxx.xxx.xxx/my-private-image:latest 在登录后,Docker 会使用存储的凭证自动完成身份验证,拉取过程会顺利进行。 加速镜像拉取(如果它是镜像代理) 如果 xxx.xxx.xxx 是一个镜像加速服务(类似于国内的镜像源,如阿里云、DaoCloud 等),登录后可能会影响从该仓库拉取镜像的速度。许多加速服务会代理 Docker Hub 的官方镜像,登录后可以通过该服务更快地下载镜像。例如: 1 docker pull xxx.xxx.xxx/library/ubuntu:latest 这里假设 xxx.xxx.xxx 代理了 Docker Hub 的 ubuntu 镜像,拉取速度可能会比直接从 registry-1.docker.io(Docker Hub 默认地址)更快,具体取决于网络环境和该服务的性能。 无变化的情况 如果登录后仍然拉取的是其他仓库的镜像(例如默认的 Docker Hub 镜像 ubuntu:latest),并且没有配置 xxx.xxx.xxx 作为镜像源,那么拉取镜像的行为不会有任何变化。登录仅对 xxx.xxx.xxx 仓库的操作生效。 拉取镜像的行为 在默认情况下,如果执行: 1 docker pull ubuntu:latest Docker 会从官方镜像仓库(即 Docker Hub,地址为 registry-1.docker.io)拉取 ubuntu:latest 镜像,而不是从 xxx.xxx.xxx 拉取。原因如下: ...

2025年6月19日 · 1 分钟 · 浅忆

Docker-开发相关镜像

开发过程中常用镜像。 ...

2025年6月1日 · 15 分钟 · 浅忆

Minio Docker 搭建

创建数据和配置目录 1 2 mkdir -p /opt/minio/{data,config,init} cd /opt/minio 创建docker-compose.yml 注意: 此配置中 minio 的环境变量不能设置MINIO_SERVER_URL(文章末尾会有说明),除非服务器做了 FQDN,否则会出现webui页面登录不上的情况,即报错{"message":"invalid Login"},但可配置MINIO_BROWSER_REDIRECT_URL做webui的重定向。 以下的镜像是minio最后一个带web控制台的版本,如果需要最新版本请参考Minio官方文档。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 version: "3.8" services: minio: image: minio/minio:RELEASE.2025-04-22T22-12-26Z container_name: minio restart: unless-stopped # 对外端口:9000(S3 API) 9001(Console) ports: - "9000:9000" - "9001:9001" # 数据和配置持久化 volumes: - ./data:/data - ./config:/root/.minio # 生产建议:用 .env 管理账号密码 environment: # 管理员账号密码(必须设置;不建议用默认值) MINIO_ROOT_USER: ${MINIO_ROOT_USER} MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD} # 可选:设置对外显示的访问地址 # 未做 FQDN 不要设置 # MINIO_DOMAIN=example.com # 服务器地址,未做 FQDN 不要设置 # MINIO_SERVER_URL=http://example.com # 控制台地址,仅设置 重定向 控制台地址 # MINIO_BROWSER_REDIRECT_URL: "https://console.example.com" # 启动命令 command: server /data --console-address ":9001" # 健康检查:MinIO 自带 health endpoint healthcheck: test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"] interval: 10s timeout: 5s retries: 5 配置 .env 1 2 MINIO_ROOT_USER=admin MINIO_ROOT_PASSWORD=Password_123! 启动 在 docker-compose.yml 所在目录运行: ...

2025年1月30日 · 4 分钟 · 浅忆