diff options
-rw-r--r-- | .github/dependabot.yml | 7 | ||||
-rw-r--r-- | .github/workflows/builds.yml | 64 | ||||
-rw-r--r-- | .github/workflows/docker.yml | 51 | ||||
-rw-r--r-- | .gitmodules | 4 | ||||
-rw-r--r-- | Dockerfile | 2 | ||||
-rw-r--r-- | README.md | 4 | ||||
-rw-r--r-- | docker/README.md | 8 | ||||
-rw-r--r-- | docker/docker-compose.yml | 2 |
8 files changed, 69 insertions, 73 deletions
diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..2c7d170 --- /dev/null +++ b/.github/dependabot.yml | |||
@@ -0,0 +1,7 @@ | |||
1 | version: 2 | ||
2 | updates: | ||
3 | # Maintain dependencies for GitHub Actions | ||
4 | - package-ecosystem: "github-actions" | ||
5 | directory: "/" | ||
6 | schedule: | ||
7 | interval: "daily" | ||
diff --git a/.github/workflows/builds.yml b/.github/workflows/builds.yml deleted file mode 100644 index 68f60ea..0000000 --- a/.github/workflows/builds.yml +++ /dev/null | |||
@@ -1,64 +0,0 @@ | |||
1 | name: Builds | ||
2 | |||
3 | on: | ||
4 | push: | ||
5 | tags: | ||
6 | - 'v*.*.*' | ||
7 | release: | ||
8 | types: [published] | ||
9 | workflow_dispatch: | ||
10 | |||
11 | jobs: | ||
12 | image-build: | ||
13 | runs-on: ubuntu-latest | ||
14 | steps: | ||
15 | - name: Checkout | ||
16 | uses: actions/checkout@v2 | ||
17 | |||
18 | - name: Docker meta | ||
19 | id: meta | ||
20 | uses: docker/metadata-action@v3 | ||
21 | with: | ||
22 | images: | | ||
23 | getferdi/ferdi-server | ||
24 | # ghcr.io/getferdi/ferdi-server | ||
25 | tags: | | ||
26 | type=ref,event=branch | ||
27 | type=ref,event=pr | ||
28 | type=semver,pattern={{version}} | ||
29 | type=semver,pattern={{major}}.{{minor}} | ||
30 | type=semver,pattern={{major}} | ||
31 | labels: org.opencontainers.image.title=Ferdi-server | ||
32 | |||
33 | - name: Set up QEMU | ||
34 | uses: docker/setup-qemu-action@v1 | ||
35 | |||
36 | - name: Set up Docker Buildx | ||
37 | uses: docker/setup-buildx-action@v1 | ||
38 | |||
39 | - name: Login to DockerHub | ||
40 | uses: docker/login-action@v1 | ||
41 | with: | ||
42 | username: ${{ secrets.DOCKERHUB_USERNAME }} | ||
43 | password: ${{ secrets.DOCKERHUB_TOKEN }} | ||
44 | |||
45 | - name: Login to GitHub Container Registry | ||
46 | uses: docker/login-action@v1 | ||
47 | with: | ||
48 | registry: ghcr.io | ||
49 | username: FerdiBot | ||
50 | password: ${{ secrets.GH_TOKEN }} | ||
51 | |||
52 | - name: Build and push | ||
53 | id: docker_build | ||
54 | uses: docker/build-push-action@v2 | ||
55 | with: | ||
56 | context: . | ||
57 | file: ./Dockerfile | ||
58 | platforms: linux/amd64,linux/arm64 | ||
59 | push: true | ||
60 | tags: ${{ steps.meta.outputs.tags }}, getferdi/ferdi-server:latest | ||
61 | labels: ${{ steps.meta.outputs.labels }} | ||
62 | |||
63 | - name: Image digest | ||
64 | run: echo ${{ steps.docker_build.outputs.digest }} | ||
diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml new file mode 100644 index 0000000..bc9b3f4 --- /dev/null +++ b/.github/workflows/docker.yml | |||
@@ -0,0 +1,51 @@ | |||
1 | name: Docker Build and Publish | ||
2 | |||
3 | on: | ||
4 | push: | ||
5 | branches: | ||
6 | - 'master' | ||
7 | |||
8 | jobs: | ||
9 | docker: | ||
10 | runs-on: ubuntu-latest | ||
11 | steps: | ||
12 | - | ||
13 | name: Checkout | ||
14 | uses: actions/checkout@v3 | ||
15 | - | ||
16 | name: Docker meta | ||
17 | id: meta | ||
18 | uses: docker/metadata-action@v3 | ||
19 | with: | ||
20 | # list of Docker images to use as base name for tags | ||
21 | images: | | ||
22 | ghcr.io/${{ github.repository }} | ||
23 | # generate Docker tags based on the following events/attributes | ||
24 | tags: | | ||
25 | type=ref,event=branch | ||
26 | type=semver,pattern={{version}} | ||
27 | - | ||
28 | name: Set up QEMU | ||
29 | uses: docker/setup-qemu-action@v1 | ||
30 | - | ||
31 | name: Set up Docker Buildx | ||
32 | uses: docker/setup-buildx-action@v1 | ||
33 | - | ||
34 | name: Login to GitHub Container Registry | ||
35 | uses: docker/login-action@v1 | ||
36 | with: | ||
37 | registry: ghcr.io | ||
38 | username: ${{ github.repository_owner }} | ||
39 | password: ${{ secrets.GITHUB_TOKEN }} | ||
40 | - | ||
41 | name: Build and push | ||
42 | uses: docker/build-push-action@v2 | ||
43 | with: | ||
44 | context: . | ||
45 | # Due to build time, only building the one currently needed. | ||
46 | # If needed, we can add more platforms when requested. | ||
47 | platforms: "linux/amd64" | ||
48 | # Push pull requests so they can be tested | ||
49 | #push: ${{ github.event_name != 'pull_request' }} | ||
50 | tags: ${{ steps.meta.outputs.tags }} | ||
51 | labels: ${{ steps.meta.outputs.labels }} | ||
diff --git a/.gitmodules b/.gitmodules index 5a8d15f..78bbdda 100644 --- a/.gitmodules +++ b/.gitmodules | |||
@@ -1,3 +1,5 @@ | |||
1 | [submodule "recipes"] | 1 | [submodule "recipes"] |
2 | path = recipes | 2 | path = recipes |
3 | url = https://github.com/getferdi/recipes | 3 | url = https://github.com/ferdium/ferdium-recipes.git |
4 | ignore = all | ||
5 | branch = main | ||
@@ -11,7 +11,7 @@ RUN ["npm", "ci", "--production", "--build-from-source", "--sqlite=/usr/local"] | |||
11 | FROM node:14.17-alpine | 11 | FROM node:14.17-alpine |
12 | 12 | ||
13 | WORKDIR /app | 13 | WORKDIR /app |
14 | LABEL maintainer="xthursdayx" | 14 | LABEL maintainer="ferdium" |
15 | 15 | ||
16 | ENV HOST=0.0.0.0 PORT=3333 DATA_DIR="/data" | 16 | ENV HOST=0.0.0.0 PORT=3333 DATA_DIR="/data" |
17 | 17 | ||
@@ -48,7 +48,7 @@ After setting up the docker container we recommend you set up an NGINX reverse p | |||
48 | 1. Pull the Docker image | 48 | 1. Pull the Docker image |
49 | 49 | ||
50 | ```sh | 50 | ```sh |
51 | docker pull getferdi/ferdi-server | 51 | docker pull ghcr.io/ferdium/ferdium-server |
52 | ``` | 52 | ``` |
53 | 2. Create a *new* Docker container with your desired configuration **Existing users please seee the warning above.** | 53 | 2. Create a *new* Docker container with your desired configuration **Existing users please seee the warning above.** |
54 | 54 | ||
@@ -80,7 +80,7 @@ After setting up the docker container we recommend you set up an NGINX reverse p | |||
80 | -v <path to data>:/data \ | 80 | -v <path to data>:/data \ |
81 | -v <path to recipes>:/app/recipes \ | 81 | -v <path to recipes>:/app/recipes \ |
82 | --restart unless-stopped \ | 82 | --restart unless-stopped \ |
83 | getferdi/ferdi-server | 83 | ghcr.io/ferdium/ferdium-server |
84 | ``` | 84 | ``` |
85 | 85 | ||
86 | Alternatively, you can also use docker-compose v2 schema. An example can be found [in the docker folder](./docker/docker-compose.yml). | 86 | Alternatively, you can also use docker-compose v2 schema. An example can be found [in the docker folder](./docker/docker-compose.yml). |
diff --git a/docker/README.md b/docker/README.md index 3cb49be..fa36da9 100644 --- a/docker/README.md +++ b/docker/README.md | |||
@@ -28,7 +28,7 @@ The docker can be run as is, with the default sqlite database, or you can modify | |||
28 | 28 | ||
29 | Pull the docker image: | 29 | Pull the docker image: |
30 | 30 | ||
31 | docker pull getferdi/ferdi-server | 31 | docker pull ghcr.io/ferdium/ferdium-server |
32 | 32 | ||
33 | To create the docker container with the proper parameters: | 33 | To create the docker container with the proper parameters: |
34 | 34 | ||
@@ -59,7 +59,7 @@ To create the docker container with the proper parameters: | |||
59 | -v <path to data>:/data \ | 59 | -v <path to data>:/data \ |
60 | -v <path to recipes>:/app/recipes \ | 60 | -v <path to recipes>:/app/recipes \ |
61 | --restart unless-stopped \ | 61 | --restart unless-stopped \ |
62 | getferdi/ferdi-server | 62 | ghcr.io/ferdium/ferdium-server |
63 | 63 | ||
64 | ### docker-compose | 64 | ### docker-compose |
65 | 65 | ||
@@ -212,7 +212,7 @@ Below are the instructions for updating the container to get the most recent ver | |||
212 | 212 | ||
213 | ### Via Docker Run/Create | 213 | ### Via Docker Run/Create |
214 | 214 | ||
215 | * Update the image: `docker pull getferdi/ferdi-server` | 215 | * Update the image: `docker pull ghcr.io/ferdium/ferdium-server` |
216 | * Stop the running container: `docker stop ferdi-server` | 216 | * Stop the running container: `docker stop ferdi-server` |
217 | * Delete the container: `docker rm ferdi-server` | 217 | * Delete the container: `docker rm ferdi-server` |
218 | * Recreate a new container with the same docker create parameters as instructed above (if mapped correctly to a host folder, your `/config` folder and ENV settings will be preserved) | 218 | * Recreate a new container with the same docker create parameters as instructed above (if mapped correctly to a host folder, your `/config` folder and ENV settings will be preserved) |
@@ -232,7 +232,7 @@ If you want to build this image locally, please run this command from root of [F | |||
232 | docker build \ | 232 | docker build \ |
233 | --no-cache \ | 233 | --no-cache \ |
234 | --pull \ | 234 | --pull \ |
235 | -t getferdi/ferdi-server:latest . | 235 | -t ghcr.io/ferdium/ferdium-server:latest . |
236 | ``` | 236 | ``` |
237 | 237 | ||
238 | ## License | 238 | ## License |
diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index 4902331..5a46cda 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml | |||
@@ -1,7 +1,7 @@ | |||
1 | version: "2" | 1 | version: "2" |
2 | services: | 2 | services: |
3 | ferdi-server: | 3 | ferdi-server: |
4 | image: getferdi/ferdi-server | 4 | image: ghcr.io/ferdium/ferdium-server |
5 | container_name: ferdi-server | 5 | container_name: ferdi-server |
6 | environment: | 6 | environment: |
7 | - NODE_ENV=development | 7 | - NODE_ENV=development |