wip
This commit is contained in:
parent
548e012b7f
commit
0198cbf209
6 changed files with 115 additions and 33 deletions
13
Dockerfile-Mobilizon
Normal file
13
Dockerfile-Mobilizon
Normal file
|
@ -0,0 +1,13 @@
|
|||
FROM framasoft/mobilizon:3.2.0
|
||||
|
||||
# USER root
|
||||
|
||||
# # Copy your local SSL certificate
|
||||
# COPY certs/mkcert_development_CA_216145382363585732815310515133172061250.pem /usr/local/share/ca-certificates/my-cert1.crt
|
||||
# COPY certs/mkcert_development_CA_251584780348326781939128892019987660627.pem /usr/local/share/ca-certificates/my-cert2.crt
|
||||
|
||||
# RUN cat /usr/local/share/ca-certificates/my-cert1.crt >> /etc/ssl/certs/ca-certificates.crt && \
|
||||
# cat /usr/local/share/ca-certificates/my-cert2.crt >> /etc/ssl/certs/ca-certificates.crt && \
|
||||
# update-ca-certificates
|
||||
|
||||
# USER nobody
|
28
Makefile
Normal file
28
Makefile
Normal file
|
@ -0,0 +1,28 @@
|
|||
init:
|
||||
@bash mobilizon/docker/message.sh "Start"
|
||||
make start
|
||||
|
||||
setup: stop
|
||||
@bash mobilizon/docker/message.sh "Compiling everything"
|
||||
docker-compose run --rm mobilizon bash -c 'mix deps.get; npm ci; npm run build:pictures; mix ecto.create; mix ecto.migrate'
|
||||
migrate:
|
||||
docker-compose run --rm mobilizon mix ecto.migrate
|
||||
logs:
|
||||
docker-compose logs -f
|
||||
start: stop
|
||||
@bash mobilizon/docker/message.sh "Starting Mobilizon with Docker"
|
||||
docker-compose up -d
|
||||
@bash mobilizon/docker/message.sh "Docker server started"
|
||||
stop:
|
||||
@bash mobilizon/docker/message.sh "Stopping Mobilizon"
|
||||
docker-compose down
|
||||
@bash mobilizon/docker/message.sh "Mobilizon is stopped"
|
||||
test: stop
|
||||
@bash mobilizon/docker/message.sh "Running tests"
|
||||
docker-compose -f docker-compose.yml -f docker-compose.test.yml run mobilizon mix prepare_test
|
||||
docker-compose -f docker-compose.yml -f docker-compose.test.yml run mobilizon mix test $(only)
|
||||
@bash mobilizon/docker/message.sh "Done running tests"
|
||||
format:
|
||||
docker-compose run --rm mobilizon bash -c "mix format && mix credo --strict"
|
||||
@bash mobilizon/docker/message.sh "Code is now ready to commit :)"
|
||||
target: init
|
20
README.md
20
README.md
|
@ -3,21 +3,29 @@
|
|||
- docker
|
||||
- `mkcert` to handle locally trusted SSL certificates.
|
||||
|
||||
2. Generate a local certificate which is used for both WordPress and Mobilizon.
|
||||
2. Clone mobilizon source
|
||||
```bash
|
||||
git clone https://framagit.org/framasoft/mobilizon.git
|
||||
```
|
||||
|
||||
3. Generate a local certificate which is used for both WordPress and Mobilizon.
|
||||
```bash
|
||||
mkcert -install -cert-file certs/lan.pem -key-file certs/lan-key.pem wp.lan mz.lan
|
||||
```
|
||||
|
||||
3. Add the two dummy domains to your /etc/hosts file:
|
||||
4. Add the two dummy domains to the /etc/hosts file on your machine:
|
||||
```
|
||||
127.0.0.1 wp.lan
|
||||
127.0.0.1 mz.lan
|
||||
```
|
||||
4. Start the docker-container via `docker-compose up -d`
|
||||
|
||||
5. Go to https://wp.lan and setup WordPress
|
||||
5. Build mobilizon via running `make setup``
|
||||
|
||||
6. Create an administrator user for Mobilizon
|
||||
5. Start the docker containers via `docker-compose up -d`
|
||||
|
||||
6. Go to https://wp.lan and setup WordPress
|
||||
|
||||
7. Create an administrator user for Mobilizon
|
||||
```
|
||||
docker-compose exec mobilizon mobilizon_ctl users.new "your@email.com" --admin --password "Y0urP4ssw0rd"
|
||||
docker-compose exec mobilizon mobilizon_ctl users.new "your@email.com" --admin --password "abc"
|
||||
```
|
||||
|
|
|
@ -20,42 +20,45 @@ services:
|
|||
- mz.lan
|
||||
|
||||
mobilizon:
|
||||
image: framasoft/mobilizon:3.2.0
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
- MOBILIZON_INSTANCE_NAME
|
||||
- MOBILIZON_INSTANCE_HOST
|
||||
- MOBILIZON_INSTANCE_PORT
|
||||
- MOBILIZON_INSTANCE_EMAIL
|
||||
- MOBILIZON_REPLY_EMAIL
|
||||
- MOBILIZON_ADMIN_EMAIL
|
||||
- MOBILIZON_INSTANCE_REGISTRATIONS_OPEN
|
||||
- MOBILIZON_DATABASE_USERNAME=${POSTGRES_USER}
|
||||
- MOBILIZON_DATABASE_PASSWORD=${POSTGRES_PASSWORD}
|
||||
- MOBILIZON_DATABASE_DBNAME=${POSTGRES_DB}
|
||||
- MOBILIZON_DATABASE_HOST=mobilizon_db
|
||||
- MOBILIZON_INSTANCE_SECRET_KEY_BASE
|
||||
- MOBILIZON_INSTANCE_SECRET_KEY
|
||||
- MOBILIZON_SMTP_SERVER
|
||||
- MOBILIZON_SMTP_HOSTNAME
|
||||
- MOBILIZON_SMTP_PORT
|
||||
- MOBILIZON_SMTP_SSL
|
||||
- MOBILIZON_SMTP_USERNAME
|
||||
- MOBILIZON_SMTP_PASSWORD
|
||||
- MOBILIZON_SMTP_TLS
|
||||
container_name: mobilizon
|
||||
restart: unless-stopped
|
||||
build:
|
||||
context: ./mobilizon
|
||||
dockerfile: Dockerfile
|
||||
volumes:
|
||||
- ./public/uploads:/var/lib/mobilizon/uploads
|
||||
- "./mobilizon:/app"
|
||||
- /etc/ssl/certs:/etc/ssl/certs:ro
|
||||
- /etc/ca-certificates/:/etc/ca-certificates/:ro
|
||||
- ./config.exs:/etc/mobilizon/config.exs:ro
|
||||
ports:
|
||||
- 4000:4000
|
||||
- 5173:5173
|
||||
depends_on:
|
||||
- mobilizon_db
|
||||
environment:
|
||||
MIX_ENV: "dev"
|
||||
DOCKER: "true"
|
||||
MOBILIZON_INSTANCE_NAME: My Local Mobilizon
|
||||
MOBILIZON_INSTANCE_HOST: mz.lan
|
||||
MOBILIZON_INSTANCE_HOST_PORT: 4000
|
||||
MOBILIZON_INSTANCE_PORT: 4000
|
||||
MOBILIZON_INSTANCE_EMAIL: noreply@mobilizon.me
|
||||
MOBILIZON_INSTANCE_REGISTRATIONS_OPEN: "true"
|
||||
MOBILIZON_DATABASE_PASSWORD: mobilizon
|
||||
MOBILIZON_DATABASE_USERNAME: mobilizon
|
||||
MOBILIZON_DATABASE_DBNAME: mobilizon
|
||||
MOBILIZON_DATABASE_HOST: mobilizon_db
|
||||
MOBILIZON_DATABASE_PORT: 5432
|
||||
VITE_HOST: ${VITE_HOST:-0.0.0.0}
|
||||
command: sh -c "mix phx.server"
|
||||
env_file:
|
||||
- .env
|
||||
expose:
|
||||
- "4000"
|
||||
|
||||
wordpress:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
dockerfile: Dockerfile-WordPress
|
||||
volumes:
|
||||
- ./wordpress:/var/www/html
|
||||
- /etc/ssl/certs:/etc/ssl/certs:ro
|
||||
|
@ -93,6 +96,7 @@ services:
|
|||
|
||||
mobilizon_db:
|
||||
image: postgis/postgis:15-3.4
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- mobilizon_database_data:/var/lib/postgresql/data
|
||||
environment:
|
||||
|
|
29
rootCA.pem
Normal file
29
rootCA.pem
Normal file
|
@ -0,0 +1,29 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIFADCCA2igAwIBAgIRAL1Fd1kL693kmpgG3ImrP1MwDQYJKoZIhvcNAQELBQAw
|
||||
gZcxHjAcBgNVBAoTFW1rY2VydCBkZXZlbG9wbWVudCBDQTE2MDQGA1UECwwtYW5k
|
||||
cmVAYW5kcmUtbWVucmF0aCAoQW5kcsOpIE1lbnJhdGggKFByaXZhdCkpMT0wOwYD
|
||||
VQQDDDRta2NlcnQgYW5kcmVAYW5kcmUtbWVucmF0aCAoQW5kcsOpIE1lbnJhdGgg
|
||||
KFByaXZhdCkpMB4XDTIzMTIwNTE0MjQ1OFoXDTMzMTIwNTE0MjQ1OFowgZcxHjAc
|
||||
BgNVBAoTFW1rY2VydCBkZXZlbG9wbWVudCBDQTE2MDQGA1UECwwtYW5kcmVAYW5k
|
||||
cmUtbWVucmF0aCAoQW5kcsOpIE1lbnJhdGggKFByaXZhdCkpMT0wOwYDVQQDDDRt
|
||||
a2NlcnQgYW5kcmVAYW5kcmUtbWVucmF0aCAoQW5kcsOpIE1lbnJhdGggKFByaXZh
|
||||
dCkpMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAvNixWV9EpcugVQx9
|
||||
vqVbJHQEsqQHrPvVMyhNt9YblpPgKZ83ka0/PRF0yBjZIS5hTSMKgw8E7hZrC8x0
|
||||
urIGkQpZh4TAEha9ZOA8udC32SFDUwwyGYYTyLUJEVwr1fZ7x6ChfLBlrUdTpmqa
|
||||
TnrgP7KzYGKTcft/IJvZaeyGhKguvt6RIsfVX3sB0cO627axObH4ugv4eLlLDz5i
|
||||
gtjqmGE6SdkxF+6B//8Pc8N95KKq8o+q7+HQwrCOwjpy/qNDM/5czNRAYvfZlpsp
|
||||
r1hyPobrSGvhtZeAPmOvgu5lKRQarcffvJaIzUUVKbzz8A5LckAFNtJiY/uGXBGT
|
||||
C5/kr47s/1jCNECu4UeS8Iznk1YQJAGWdMIHEDBjkIkMt1RHvc+SOn7ADJdu2a2y
|
||||
q5JbbReLBK1x3vs6XMsJl0qNip59VUCsnmvAsquujbD3sCSXcx7kre2KfKGLLxz3
|
||||
PDh6Q1PSB+JfRmzlE/XHtMzFt1QgzmP2juZ/kUPhbZkfeMp5AgMBAAGjRTBDMA4G
|
||||
A1UdDwEB/wQEAwICBDASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBSp+OhG
|
||||
6Ob3x1b5/vFGO5M8mcj58jANBgkqhkiG9w0BAQsFAAOCAYEASttRwchg+YGWrQCy
|
||||
kXL+e/BsvJEEainyaqKPKpqxxprwiGjmc3++p2AQ9lfbfziJjjoa13NPwiwWt8GC
|
||||
gxbTP28B7NRHKVx2Ub9b+nl+ca9KwLQulurxiP2Wez7ln+Gf/YnzFHHzX7N5TgzG
|
||||
REdSXIlRtcNhuxFWHa0B2Qxtlr9hJyY5kZFFKXlwkw8VHbhpguizVnwy0rwnkKwu
|
||||
13tFYuBPQDmyacy36Bki1UxW2K9JogDVNfTbzrDev4D7q7bBskCokvBGJflinV+O
|
||||
3IN1OQrwfEa7RsgMvb8lmk24lHqqkIjpDsi/MqHM+1YSx6b3+PYD7LcdEtDLVQDL
|
||||
3hM/TmKVSub+lH7irpgEQmT9fIMBKMiaV0j9bUurXgVu/mYVmQbCzEgd9oNpslOu
|
||||
Zf8ke6nNm24oSGKju790N5bx7fLCCAGVnUF51UBTmVymOXAv2q7QfQY7WXO3hbTl
|
||||
vZwkCMVn4t6gy8TBcQhSl/0OFFTdOHTYueRA9RoBzyMCo9Uk
|
||||
-----END CERTIFICATE-----
|
Loading…
Reference in a new issue