aboutsummaryrefslogtreecommitdiffstats
path: root/docker
diff options
context:
space:
mode:
authorLibravatar Vijay Aravamudhan <vraravam@users.noreply.github.com>2022-04-24 12:23:44 -0500
committerLibravatar GitHub <noreply@github.com>2022-04-24 12:23:44 -0500
commit442ef142fc4bd7c430d8a1314535f03576f616f6 (patch)
tree10d8df84e8c5ba68b7dd0bf6bc1e0add6a766b63 /docker
parentfix: branding on README.md (diff)
downloadferdium-server-442ef142fc4bd7c430d8a1314535f03576f616f6.tar.gz
ferdium-server-442ef142fc4bd7c430d8a1314535f03576f616f6.tar.zst
ferdium-server-442ef142fc4bd7c430d8a1314535f03576f616f6.zip
Rebranded from 'ferdi' to 'ferdium' (#4)
Diffstat (limited to 'docker')
-rw-r--r--docker/README.md144
-rw-r--r--docker/docker-compose.yml16
-rwxr-xr-xdocker/entrypoint.sh26
3 files changed, 94 insertions, 92 deletions
diff --git a/docker/README.md b/docker/README.md
index fa36da9..fd5debb 100644
--- a/docker/README.md
+++ b/docker/README.md
@@ -1,10 +1,10 @@
1# Ferdi-server-docker 1# Ferdium-server-docker
2[Ferdi](https://github.com/getferdi/ferdi) is a hard-fork of [Franz](https://github.com/meetfranz/franz), adding awesome features and removing unwanted ones. Ferdi-server is an unofficial replacement of the Franz server for use with the Ferdi Client. 2[Ferdium](https://github.com/ferdium/ferdium-app) is a hard-fork of [Ferdi](https://github.com/getferdi/ferdi), adding awesome features and removing unwanted ones. Ferdium-server is an unofficial replacement of the Franz/Ferdi server for use with the Ferdium Client.
3 3
4This is a dockerized version of [Ferdi-server](https://github.com/getferdi/server) running on Alpine Linux and Node.js (v10.16.3). 4This is a dockerized version of [Ferdium-server](https://github.com/ferdium/ferdium-server) running on Alpine Linux and Node.js (v10.16.3).
5 5
6## Why use a custom Ferdi-server? 6## Why use a custom Ferdium-server?
7A custom Ferdi-server allows you to experience the full potential of the Ferdi Client. It allows you to use all Premium features (e.g. Workspaces and custom URL recipes) and [add your own recipes](#creating-and-using-custom-recipes). 7A custom Ferdium-server allows you to experience the full potential of the Ferdium Client. It allows you to use all Premium features (e.g. Workspaces and custom URL recipes) for free and [add your own recipes](#creating-and-using-custom-recipes) that are monetized in Franz.
8 8
9## Features 9## Features
10- [x] User registration and login 10- [x] User registration and login
@@ -13,16 +13,16 @@ A custom Ferdi-server allows you to experience the full potential of the Ferdi C
13- [x] Functioning service store 13- [x] Functioning service store
14- [x] User dashboard 14- [x] User dashboard
15- [x] Password recovery 15- [x] Password recovery
16- [x] Export/import data to other Ferdi-servers 16- [x] Export/import data to other Ferdium-servers
17- [ ] Recipe update 17- [ ] Recipe update
18 18
19## Installation & Setup 19## Installation & Setup
20 20
21Here are some example snippets to help you get started creating a container. 21Here are some example snippets to help you get started creating a container.
22 22
23The docker can be run as is, with the default sqlite database, or you can modify your environment variables to use an external database (e.g. MySQL, MariaDB, Postgres, etc). After setting up the docker container you will need to create a reverse proxy to access Ferdi-server outside of your home network, using a webserver such as NGINX. 23The docker can be run as is, with the default sqlite database, or you can modify your environment variables to use an external database (e.g. MySQL, MariaDB, Postgres, etc). After setting up the docker container you will need to create a reverse proxy to access Ferdium-server outside of your home network, using a webserver such as NGINX.
24 24
25**Existing users, please note:** The latest updates to Ferdi-server and the Ferdi-server Docker image introduce changes to the default SQLite database name and location, as well as the internal container port. The new container port is `3333`. If you would like to keep your existing SQLite database, you will need to add the `DATA_DIR` variable and change it to `/app/database`, to match your existing data volume. You will also need to change the `DB_DATABASE` variable to `development` to match your existing database. Please see the parameters in the [Migration section](#migrating-from-an-existing-ferdi-server) below. 25**Existing users, please note:** The latest updates to Ferdium-server and the Ferdium-server Docker image, introduce changes to the default SQLite database name and location, as well as the internal container port. The new container port is `3333`. If you would like to keep your existing SQLite database, you will need to add the `DATA_DIR` variable and change it to `/app/database`, to match your existing data volume. You will also need to change the `DB_DATABASE` variable to `development` to match your existing database. Please see the parameters in the [Migration section](#migrating-from-an-existing-ferdium-server) below.
26 26
27### docker 27### docker
28 28
@@ -33,9 +33,9 @@ Pull the docker image:
33To create the docker container with the proper parameters: 33To create the docker container with the proper parameters:
34 34
35 docker create \ 35 docker create \
36 --name=ferdi-server \ 36 --name=ferdium-server \
37 -e NODE_ENV=development \ 37 -e NODE_ENV=development \
38 -e APP_URL=<ferdi-server-url> \ 38 -e APP_URL=<ferdium-server-url> \
39 -e DB_CONNECTION=<database> \ 39 -e DB_CONNECTION=<database> \
40 -e DB_HOST=<yourdbhost> \ 40 -e DB_HOST=<yourdbhost> \
41 -e DB_PORT=<yourdbport> \ 41 -e DB_PORT=<yourdbport> \
@@ -63,46 +63,46 @@ To create the docker container with the proper parameters:
63 63
64### docker-compose 64### docker-compose
65 65
66 You can use the provided sample [docker-compose.yml](https://github.com/getferdi/server/tree/master/docker/docker-compose.yml) if you are happy with the default environmental variables. This will pull the latest image from Docker Hub or use a local copy of the image which you can build using the instructions provided in the [Building locally section](#building-locally). 66You can use the provided sample [docker-compose.yml](https://github.com/ferdium/ferdium-server/tree/master/docker/docker-compose.yml) if you are happy with the default environment variables. This will pull the latest image from Docker Hub or use a local copy of the image, which you can build using the instructions provided in the [Building locally section](#building-locally).
67 67
68 To start the application, use `docker-compose -f docker/docker-compose.yml up -d`. 68To start the application, use `docker-compose -f docker/docker-compose.yml up -d`.
69The server will be launched at [http://localhost:3333/](http://localhost:3333/) address. 69The server will be launched at [http://localhost:3333/](http://localhost:3333/) address.
70 70
71## Configuration 71## Configuration
72 72
73Container images are configured using parameters passed at runtime (such as those above). An explanaition of the default parameters is included below, but please see [the Docker documentation](https://docs.docker.com/get-started/overview/) for additional information. 73Container images are configured using parameters passed at runtime (such as those above). An explanaition of the default parameters is included below, but please see [the Docker documentation](https://docs.docker.com/get-started/overview/) for additional information.
74 74
75<strike>If any environmental parameter is not passed to the container, its value will be taken from the `/config/config.txt` file.</strike> 75<strike>If any environment parameter is not passed to the container, its value will be taken from the `/config/config.txt` file.</strike>
76**Warning, the use of `config.txt` is now deprecated. Please make sure to pass the correct environmental variables to your container at runtime. ** 76**Warning, the use of `config.txt` is now deprecated. Please make sure to pass the correct environment variables to your container at runtime. **
77 77
78| Parameter | Function | 78| Parameter | Function |
79| :----: | --- | 79| :----: | --- |
80| `-p <port>:3333` | Will map the container's port 3333 to a port on the host, default is 3333. See the [Docker docs](https://docs.docker.com/config/containers/container-networking/) for more information about port mapping | 80| `-p <port>:3333` | Will map the container's port 3333 to a port on the host, default is 3333. See the [Docker docs](https://docs.docker.com/config/containers/container-networking/) for more information about port mapping |
81| `-e NODE_ENV=development` | for specifying Node environment, production or development, default is development **currently this should not be changed**. See the [Docker docs](https://docs.docker.com/) for more information on the use of environmental variables in [Command-line](https://docs.docker.com/engine/reference/commandline/run/#mount-volume--v---read-only) and [Docker Compose](https://docs.docker.com/compose/environment-variables/) | 81| `-e NODE_ENV=development` | for specifying Node environment, production or development, default is development **currently this should not be changed**. See the [Docker docs](https://docs.docker.com/) for more information on the use of environment variables in [Command-line](https://docs.docker.com/engine/reference/commandline/run/#mount-volume--v---read-only) and [Docker Compose](https://docs.docker.com/compose/environment-variables/) |
82| `-e APP_URL=<ferdi-server-url>` | for specifying the URL of the Ferdi-server, including `http://` or `https://` as relevant. | 82| `-e APP_URL=<ferdium-server-url>` | for specifying the URL of the Ferdium-server, including `http://` or `https://` as relevant. |
83| `-e DB_CONNECTION=<databasedriver` | for specifying the database being used, default is sqlite, see [below](#supported-databases-and-drivers) for other options | 83| `-e DB_CONNECTION=<databasedriver` | for specifying the database being used, default is `sqlite`, see [below](#supported-databases-and-drivers) for other options |
84| `-e DB_HOST=<yourdbhost>` | for specifying the database host, default is 127.0.0.1 | 84| `-e DB_HOST=<yourdbhost>` | for specifying the database host, default is `127.0.0.1` |
85| `-e DB_PORT=<yourdbport>` | for specifying the database port, default is 3306 | 85| `-e DB_PORT=<yourdbport>` | for specifying the database port, default is `3306` |
86| `-e DB_USER=<yourdbuser>` | for specifying the database user, default is root | 86| `-e DB_USER=<yourdbuser>` | for specifying the database user, default is `root` |
87| `-e DB_PASSWORD=<yourdbpass>` | for specifying the database password, default is password | 87| `-e DB_PASSWORD=<yourdbpass>` | for specifying the database password, default is `password` |
88| `-e DB_DATABASE=<databasename>` | for specifying the database name to be used, default is ferdi | 88| `-e DB_DATABASE=<databasename>` | for specifying the database name to be used, default is `ferdium` |
89| `-e DB_SSL=false` | true only if your database is postgres and it is hosted online, on platforms like GCP, AWS, etc | 89| `-e DB_SSL=false` | true only if your database is postgres and it is hosted online, on platforms like GCP, AWS, etc |
90| `-e MAIL_CONNECTION=<mailsender>` | for specifying the mail sender to be used, default is smtp | 90| `-e MAIL_CONNECTION=<mailsender>` | for specifying the mail sender to be used, default is `smtp` |
91| `-e SMTP_HOST=<smtpmailserver>` | for specifying the mail host to be used, default is 127.0.0.1 | 91| `-e SMTP_HOST=<smtpmailserver>` | for specifying the mail host to be used, default is `127.0.0.1` |
92| `-e SMTP_PORT=<smtpport>` | for specifying the mail port to be used, default is 2525 | 92| `-e SMTP_PORT=<smtpport>` | for specifying the mail port to be used, default is `2525` |
93| `-e MAIL_SSL=true/false` | for specifying SMTP mail security, default is false | 93| `-e MAIL_SSL=true/false` | for specifying SMTP mail security, default is `false` |
94| `-e MAIL_USERNAME=<yourmailusername>` | for specifying your mail username to be used, default is username | 94| `-e MAIL_USERNAME=<yourmailusername>` | for specifying your mail username to be used, default is `username` |
95| `-e MAIL_PASSWORD=<yourmailpassword>` | for specifying your mail password to be used, default is password | 95| `-e MAIL_PASSWORD=<yourmailpassword>` | for specifying your mail password to be used, default is `password` |
96| `-e MAIL_SENDER=<sendemailaddress` | for specifying the mail sender address to be used, default is noreply@getferdi.com | 96| `-e MAIL_SENDER=<sendemailaddress` | for specifying the mail sender address to be used, default is `noreply@ferdium.org` |
97| `-e IS_CREATION_ENABLED=true` | for specifying whether to enable the [creation of custom recipes](#creating-and-using-custom-recipes), default is true | 97| `-e IS_CREATION_ENABLED=true` | for specifying whether to enable the [creation of custom recipes](#creating-and-using-custom-recipes), default is `true` |
98| `-e IS_DASHBOARD_ENABLED=true` | for specifying whether to enable the Ferdi-server dashboard, default is true | 98| `-e IS_DASHBOARD_ENABLED=true` | for specifying whether to enable the Ferdium-server dashboard, default is `true` |
99| `-e IS_REGISTRATION_ENABLED=true` | for specifying whether to allow user registration, default is true | 99| `-e IS_REGISTRATION_ENABLED=true` | for specifying whether to allow user registration, default is `true` |
100| `-e CONNECT_WITH_FRANZ=true` | for specifying whether to enable connections to the Franz server, default is true | 100| `-e CONNECT_WITH_FRANZ=true` | for specifying whether to enable connections to the Franz server, default is `true` |
101| `-e DATA_DIR=/data` | for specifying the SQLite database folder, default is /data | 101| `-e DATA_DIR=/data` | for specifying the SQLite database folder, default is `/data` |
102| `-v <path to data on host>:/data` | this will store Ferdi-server's data (its database, among other things) on the docker host for persistence. See the [Docker docs](https://docs.docker.com/storage/volumes/) for more information on the use of container volumes | 102| `-v <path to data on host>:/data` | this will store Ferdium-server's data (its database, among other things) on the docker host for persistence. See the [Docker docs](https://docs.docker.com/storage/volumes/) for more information on the use of container volumes |
103| `-v <path to recipes on host>:/app/recipes` | this will store Ferdi-server's recipes on the docker host for persistence | 103| `-v <path to recipes on host>:/app/recipes` | this will store Ferdium-server's recipes on the docker host for persistence |
104 104
105By enabling the `CONNECT_WITH_FRANZ` option, Ferdi-server can: 105By enabling the `CONNECT_WITH_FRANZ` option, Ferdium-server can:
106 - Show the full Franz recipe library instead of only custom recipes 106 - Show the full Franz recipe library instead of only custom recipes
107 - Import Franz accounts 107 - Import Franz accounts
108 108
@@ -127,45 +127,45 @@ To use a different email sender than the default, SMTP, enter the correct inform
127| Mailgun | MAILGUN_DOMAIN, MAILGUN_API_REGION, MAILGUN_API_KEY | 127| Mailgun | MAILGUN_DOMAIN, MAILGUN_API_REGION, MAILGUN_API_KEY |
128| (**Deprecated**) Ethereal | A disposable account is created automatically if you choose this option. | 128| (**Deprecated**) Ethereal | A disposable account is created automatically if you choose this option. |
129 129
130## Migrating from an existing Ferdi-server 130## Migrating from an existing Ferdium-server
131 131
132If you are an existing Ferdi-server user using the built-in `SQlite` database, you should include the following variables: 132If you are an existing Ferdium-server user using the built-in `SQlite` database, you should include the following variables:
133| Parameter | Function | 133| Parameter | Function |
134| :----: | --- | 134| :----: | --- |
135| `-p 3333:3333` | existing Ferdi-server users will need to update their container port mappings from `80:3333` to `3333:3333` | 135| `-p 3333:3333` | existing Ferdium-server users will need to update their container port mappings from `80:3333` to `3333:3333` |
136| `-e DB_PASSWORD=development` | existing Ferdi-server users who use the built-in sqlite database should use the database name `development` | 136| `-e DB_PASSWORD=development` | existing Ferdium-server users who use the built-in sqlite database should use the database name `development` |
137| `-e DATA_DIR=/app/database` | existing Ferdi-server users who use the built-in sqlite database should add this environmental variable to ensure data persistence | 137| `-e DATA_DIR=/app/database` | existing Ferdium-server users who use the built-in sqlite database should add this environment variable to ensure data persistence |
138| `-v <path to data on host>=/app/databases` | existing Ferdi-server users who use the built-in sqlite database should use the volume name `/app/database` | 138| `-v <path to data on host>=/app/databases` | existing Ferdium-server users who use the built-in sqlite database should use the volume name `/app/database` |
139 139
140If you are an existing Ferdi-server user who uses an external database or different variables for the built-in `SQlite` database, you should updatae your parameterse acordingly. For example, if you aree using an exterenal MariaDB or MySql database your unique parameters might look like this: 140If you are an existing Ferdium-server user who uses an external database or different variables for the built-in `SQlite` database, you should updatae your parameterse acordingly. For example, if you aree using an exterenal MariaDB or MySql database your unique parameters might look like this:
141| Parameter | Function | 141| Parameter | Function |
142| :----: | --- | 142| :----: | --- |
143| `-e DB_CONNECTION=mysql` | for specifying the database being used | 143| `-e DB_CONNECTION=mysql` | for specifying the database being used |
144| `-e DB_HOST=192.168.10.1` | for specifying the database host machine IP | 144| `-e DB_HOST=192.168.10.1` | for specifying the database host machine IP |
145| `-e DB_PORT=3306` | for specifying the database port | 145| `-e DB_PORT=3306` | for specifying the database port |
146| `-e DB_USER=ferdi` | for specifying the database user | 146| `-e DB_USER=ferdium` | for specifying the database user |
147| `-e DB_PASSWORD=ferdipw` | for specifying the database password| 147| `-e DB_PASSWORD=ferdiumpw` | for specifying the database password|
148| `-e DB_DATABASE=adonis` | for specifying the database to be used| 148| `-e DB_DATABASE=adonis` | for specifying the database to be used|
149| `-v <path to database>:/app/database` | this will strore Ferdi-server's database on the docker host for persistence | 149| `-v <path to database>:/app/database` | this will store Ferdium-server's database on the docker host for persistence |
150| `-v <path to recipes>:/app/recipes` | this will strore Ferdi-server's recipes on the docker host for persistence | 150| `-v <path to recipes>:/app/recipes` | this will store Ferdium-server's recipes on the docker host for persistence |
151 151
152**In either case, please be sure to pass the correct variables to the new Ferdi-server container in order maintain access to your existing database.** 152**In either case, please be sure to pass the correct variables to the new Ferdium-server container in order maintain access to your existing database.**
153 153
154## NGINX config block 154## NGINX config block
155 155
156To access Ferdi-server from outside of your home network on a subdomain use this server block: 156To access Ferdium-server from outside of your home network on a subdomain use this server block:
157 157
158``` 158```
159# Ferdi-server 159# Ferdium-server
160server { 160server {
161 listen 443 ssl http2; 161 listen 443 ssl http2;
162 server_name ferdi.my.website; 162 server_name ferdium.my.website;
163 163
164 # all ssl related config moved to ssl.conf 164 # all ssl related config moved to ssl.conf
165 include /config/nginx/ssl.conf; 165 include /config/nginx/ssl.conf;
166 166
167 location / { 167 location / {
168 proxy_pass http://<Ferdi-IP>:3333; 168 proxy_pass http://<Ferdium-IP>:3333;
169 proxy_set_header X-Real-IP $remote_addr; 169 proxy_set_header X-Real-IP $remote_addr;
170 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 170 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
171 proxy_set_header Host $host; 171 proxy_set_header Host $host;
@@ -174,11 +174,11 @@ server {
174} 174}
175``` 175```
176 176
177## Importing your Franz account 177## Importing your Franz/Ferdi account
178 178
179Ferdi-server allows you to import your full Franz account, including all its settings. 179Ferdium-server allows you to import your full Franz account, including all its settings.
180 180
181To import your Franz account, open `http://[YOUR FERDI-SERVER]/import` in your browser and login using your Franz account details. Ferdi-server will create a new user with the same credentials and copy your Franz settings, services and workspaces. 181To import your Franz account, open `http://[YOUR FERDIUM-SERVER]/import` in your browser and login using your Franz account details. Ferdium-server will create a new user with the same credentials and copy your Franz settings, services and workspaces.
182 182
183## Transferring user data 183## Transferring user data
184 184
@@ -186,48 +186,48 @@ Please refer to <https://github.com/getferdi/ferdi/wiki/Transferring-data-betwee
186 186
187## Creating and using custom recipes 187## Creating and using custom recipes
188 188
189Ferdi-server allows to extends the Franz recipe catalogue with custom Ferdi recipes. 189Ferdium-server allows to extends the Franz recipe catalogue with custom Ferdi recipes.
190 190
191For documentation on how to create a recipe, please visit [the official guide by Franz](https://github.com/meetfranz/plugins/blob/master/docs/integration.md). 191For documentation on how to create a recipe, please visit [the official guide](https://github.com/ferdium/ferdium-recipes/blob/master/docs/integration.md).
192 192
193To add your recipe to Ferdi-server, open `http://[YOUR FERDI-SERVER]/new` in your browser. You can now define the following settings: 193To add your recipe to Ferdium-server, open `http://[YOUR FERDIUM-SERVER]/new` in your browser. You can now define the following settings:
194- `Author`: Author who created the recipe 194- `Author`: Author who created the recipe
195- `Name`: Name for your new service. Can contain spaces and unicode characters 195- `Name`: Name for your new service. Can contain spaces and unicode characters
196- `Service ID`: Unique ID for this recipe. Does not contain spaces or special characters (e.g. `google-drive`) 196- `Service ID`: Unique ID for this recipe. Does not contain spaces or special characters (e.g. `google-drive`)
197- `Link to PNG/SVG image`: Direct link to a 1024x1024 PNG image and SVG that is used as a logo inside the store. Please use jsDelivr when using a file uploaded to GitHub as raw.githubusercontent files won't load 197- `Link to PNG/SVG image`: Direct link to a 1024x1024 PNG image and SVG that is used as a logo inside the store. Please use jsDelivr when using a file uploaded to GitHub as raw.githubusercontent files won't load
198- `Recipe files`: Recipe files that you created using the [Franz recipe creation guide](https://github.com/meetfranz/plugins/blob/master/docs/integration.md). Please do *not* package your files beforehand - upload the raw files (you can drag and drop multiple files). Ferdi-server will automatically package and store the recipe in the right format. Please also do not drag and drop or select the whole folder, select the individual files. 198- `Recipe files`: Recipe files that you created using the [recipe creation guide](https://github.com/ferdium/ferdium-recipes/blob/master/docs/integration.md). Please do *not* package your files beforehand - upload the raw files (you can drag and drop multiple files). Ferdium-server will automatically package and store the recipe in the right format. Please also do not drag and drop or select the whole folder, select the individual files.
199 199
200### Listing custom recipes 200### Listing custom recipes
201 201
202Inside Ferdi, searching for `ferdi:custom` will list all your custom recipes. 202Inside Ferdium, searching for `ferdium:custom` will list all your custom recipes.
203 203
204## Support Info 204## Support Info
205 205
206* Shell access while the container is running: `docker exec -it ferdi-server /bin/bash` 206* Shell access while the container is running: `docker exec -it ferdium-server /bin/bash`
207* To monitor the logs of the container in realtime: `docker logs -f ferdi-server` 207* To monitor the logs of the container in realtime: `docker logs -f ferdium-server`
208 208
209## Updating Info 209## Updating Info
210 210
211Below are the instructions for updating the container to get the most recent version of Ferdi-server: 211Below are the instructions for updating the container to get the most recent version of Ferdium-server:
212 212
213### Via Docker Run/Create 213### Via Docker Run/Create
214 214
215* Update the image: `docker pull ghcr.io/ferdium/ferdium-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 ferdium-server`
217* Delete the container: `docker rm ferdi-server` 217* Delete the container: `docker rm ferdium-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)
219* Start the new container: `docker start ferdi-server` 219* Start the new container: `docker start ferdium-server`
220 220
221### Via Docker Compose 221### Via Docker Compose
222 222
223* Update all images: `docker-compose -f docker/docker-compose.yml pull` 223* Update all images: `docker-compose -f docker/docker-compose.yml pull`
224 * or update a single image: `docker-compose -f docker/docker-compose.yml pull ferdi-server` 224 * or update a single image: `docker-compose -f docker/docker-compose.yml pull ferdium-server`
225* Let compose update all containers as necessary: `docker-compose -f docker/docker-compose.yml up -d` 225* Let compose update all containers as necessary: `docker-compose -f docker/docker-compose.yml up -d`
226 * or update a single container: `docker-compose -f docker/docker-compose.yml up -d ferdi-server` 226 * or update a single container: `docker-compose -f docker/docker-compose.yml up -d ferdium-server`
227 227
228## Building locally 228## Building locally
229 229
230If you want to build this image locally, please run this command from root of [Ferdi-server repository](https://github.com/getferdi/server/tree/master/): 230If you want to build this image locally, please run this command from root of [Ferdium-server repository](https://github.com/ferdium/ferdium-server/tree/master/):
231``` 231```
232docker build \ 232docker build \
233 --no-cache \ 233 --no-cache \
@@ -236,4 +236,4 @@ docker build \
236``` 236```
237 237
238## License 238## License
239Ferdi-server-docker and Ferdi-server are licensed under the MIT License. 239Ferdium-server-docker and Ferdium-server are licensed under the MIT License.
diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml
index 5a46cda..757717a 100644
--- a/docker/docker-compose.yml
+++ b/docker/docker-compose.yml
@@ -1,8 +1,8 @@
1version: "2" 1version: "2"
2services: 2services:
3 ferdi-server: 3 ferdium-server:
4 image: ghcr.io/ferdium/ferdium-server 4 image: ghcr.io/ferdium/ferdium-server
5 container_name: ferdi-server 5 container_name: ferdium-server
6 environment: 6 environment:
7 - NODE_ENV=development 7 - NODE_ENV=development
8 - APP_URL=localhost 8 - APP_URL=localhost
@@ -11,7 +11,7 @@ services:
11 - DB_PORT=3306 11 - DB_PORT=3306
12 - DB_USER=root 12 - DB_USER=root
13 - DB_PASSWORD=password 13 - DB_PASSWORD=password
14 - DB_DATABASE=ferdi 14 - DB_DATABASE=ferdium
15 - DB_SSL=false 15 - DB_SSL=false
16 - MAIL_CONNECTION=smtp 16 - MAIL_CONNECTION=smtp
17 - SMTP_HOST=127.0.0.1 17 - SMTP_HOST=127.0.0.1
@@ -19,7 +19,7 @@ services:
19 - MAIL_SSL=false 19 - MAIL_SSL=false
20 - MAIL_USERNAME=username 20 - MAIL_USERNAME=username
21 - MAIL_PASSWORD=password 21 - MAIL_PASSWORD=password
22 - MAIL_SENDER=noreply@getferdi.com 22 - MAIL_SENDER=noreply@ferdium.org
23 - IS_CREATION_ENABLED=true 23 - IS_CREATION_ENABLED=true
24 - IS_DASHBOARD_ENABLED=true 24 - IS_DASHBOARD_ENABLED=true
25 - IS_REGISTRATION_ENABLED=true 25 - IS_REGISTRATION_ENABLED=true
@@ -28,11 +28,11 @@ services:
28 - PUID=1000 28 - PUID=1000
29 - PGID=1000 29 - PGID=1000
30 volumes: 30 volumes:
31 - ferdi-database-vol:/data 31 - ferdium-database-vol:/data
32 - ferdi-recipes-vol:/app/recipes 32 - ferdium-recipes-vol:/app/recipes
33 ports: 33 ports:
34 - 3333:3333 34 - 3333:3333
35 restart: unless-stopped 35 restart: unless-stopped
36volumes: 36volumes:
37 ferdi-database-vol: 37 ferdium-database-vol:
38 ferdi-recipes-vol: 38 ferdium-recipes-vol:
diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh
index 2e58abc..44f480f 100755
--- a/docker/entrypoint.sh
+++ b/docker/entrypoint.sh
@@ -2,19 +2,21 @@
2 2
3cat << EOL 3cat << EOL
4------------------------------------- 4-------------------------------------
5 ____ ___ 5 ______ ___
6 / __/__ _______/ (_) 6 / ____/__ _________/ (_)_ ______ ___
7 / _// -_) __/ _ / / 7 / /_ / _ \/ ___/ __ / / / / / __ `__ \
8 _/_/ \__/_/ \_,_/_/ 8 / __/ / __/ / / /_/ / / /_/ / / / / / /
9 / __/__ _____ _____ ____ 9 /_/ \___/_/ \__,_/_/\__,_/_/ /_/ /_/
10 _\ \/ -_) __/ |/ / -_) __/ 10
11 /___/\__/_/ |___/\__/_/ 11 _____
12Brought to you by getferdi.com 12 / ___/___ ______ _____ _____
13Support our Open Collective at: 13 \__ \/ _ \/ ___/ | / / _ \/ ___/
14https://opencollective.com/getferdi/ 14 ___/ / __/ / | |/ / __/ /
15 /____/\___/_/ |___/\___/_/
16Brought to you by ferdium.org
15EOL 17EOL
16 18
17key_file="${DATA_DIR}/FERDI_APP_KEY.txt" 19key_file="${DATA_DIR}/FERDIUM_APP_KEY.txt"
18 20
19print_app_key_message() { 21print_app_key_message() {
20 app_key=$1 22 app_key=$1
@@ -25,7 +27,7 @@ print_app_key_message() {
25# Create APP key if needed 27# Create APP key if needed
26if [ -z ${APP_KEY} ] && [ ! -f ${key_file} ] 28if [ -z ${APP_KEY} ] && [ ! -f ${key_file} ]
27then 29then
28 echo '**** Generating Ferdi-server app key for first run ****' 30 echo '**** Generating Ferdium-server app key for first run ****'
29 adonis key:generate 31 adonis key:generate
30 APP_KEY=$(grep APP_KEY .env | cut -d '=' -f2) 32 APP_KEY=$(grep APP_KEY .env | cut -d '=' -f2)
31 echo ${APP_KEY} > ${key_file} 33 echo ${APP_KEY} > ${key_file}