浏览代码

Create forsaken-mail

Stille 4 年之前
父节点
当前提交
9544e22b0e
共有 4 个文件被更改,包括 98 次插入0 次删除
  1. 37 0
      .github/workflows/forsaken-mail.yml
  2. 16 0
      forsaken-mail/Dockerfile
  3. 35 0
      forsaken-mail/README.md
  4. 10 0
      forsaken-mail/docker-compose.yml

+ 37 - 0
.github/workflows/forsaken-mail.yml

@@ -0,0 +1,37 @@
+name: "forsaken-mail docker build"
+
+env:
+  PROJECT: forsaken-mail
+
+on:
+  workflow_dispatch:
+
+jobs:
+  build:
+    runs-on: ubuntu-latest
+    env:
+      ACTIONS_ALLOW_UNSECURE_COMMANDS: true
+    steps:
+      - name: Checkout
+        uses: actions/checkout@v2
+      - name: Docker Hub login
+        env:
+          DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+          DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+        run: |
+          echo "${DOCKER_PASSWORD}" | docker login --username ${DOCKER_USERNAME} --password-stdin
+      - name: Set up Docker Buildx
+        id: buildx
+        uses: crazy-max/ghaction-docker-buildx@v1
+        with:
+          buildx-version: latest
+      - name: Build Dockerfile
+        env:
+          DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+        run: |
+          docker buildx build \
+          --platform=linux/amd64,linux/arm64 \
+          --output "type=image,push=true" \
+          --file ${{ env.PROJECT }}/Dockerfile ./${{ env.PROJECT }} \
+          --tag $(echo "${DOCKER_USERNAME}" | tr '[:upper:]' '[:lower:]')/${{ env.PROJECT }}:latest \
+          --tag $(echo "${DOCKER_USERNAME}" | tr '[:upper:]' '[:lower:]')/${{ env.PROJECT }}:$(date +%Y)-$(date +%m)-$(date +%d)

+ 16 - 0
forsaken-mail/Dockerfile

@@ -0,0 +1,16 @@
+FROM node:lts-alpine
+MAINTAINER Hongcai Deng <[email protected]>
+
+WORKDIR /forsaken-mail
+
+RUN wget https://github.com/denghongcai/forsaken-mail/archive/master.tar.gz -q -O /tmp/forsaken-mail-master.tar.gz \
+    && tar zxf /tmp/forsaken-mail-master.tar.gz -C /tmp \
+    && mv /tmp/forsaken-mail-master/* /forsaken-mail \
+    && rm /tmp/forsaken-mail-master.tar.gz \
+    && npm install --production \
+    && npm cache clean --force
+
+EXPOSE 25
+EXPOSE 3000
+CMD ["npm", "start"]
+

+ 35 - 0
forsaken-mail/README.md

@@ -0,0 +1,35 @@
+# forsaken-mail
+
+GitHub [stilleshan/dockerfiles](https://github.com/stilleshan/dockerfiles)  
+Docker [stilleshan/forsaken-mail](https://hub.docker.com/r/stilleshan/forsaken-mail)
+> *docker image support for X86 and ARM*
+
+## 简介
+基于 [forsaken-mail](https://github.com/denghongcai/forsaken-mail) 临时邮箱项目的 docker 镜像.
+
+## 更新
+**2021-06-21** 更新 docker 镜像,已简单测试能够正常收取`126`和`hotmail`邮箱发送的邮件.
+
+## 部署
+### docker
+```shell
+docker run -d --name=forsaken-mail --restart=always -p 25:25 -p 3000:3000 stilleshan/forsaken-mail
+```
+
+### docker compose
+下载 [docker-compose.yml](https://raw.githubusercontent.com/stilleshan/dockerfiles/main/forsaken-mail/docker-compose.yml) 执行以下命令启动:
+```shell
+docker-compose up -d
+```
+
+### 配置域名
+示例,使用`temp.yourdomain.com`作为临时邮箱后缀.将会生成类似`[email protected]`的临时邮箱.
+#### 设置邮箱域名 A 记录
+设置`temp`的`A`记录至服务器 IP .
+
+#### 设置邮箱域名 MX 记录
+设置`temp`的`MX`记录至上述`temp.yourdomain.com`,优先级设置为`10`.
+
+## 参考
+GitHub [denghongcai/forsaken-mail](https://github.com/denghongcai/forsaken-mail)
+

+ 10 - 0
forsaken-mail/docker-compose.yml

@@ -0,0 +1,10 @@
+version: "3"
+services:
+  forsaken-mail:
+    image: stilleshan/forsaken-mail
+    container_name: forsaken-mail
+    ports:
+      - 25:25
+      - 3000:3000
+    restart: always
+