mirror of
https://github.com/Gurkengewuerz/nitro-docker.git
synced 2024-11-23 00:20:52 +01:00
feat: add automcms
This commit is contained in:
parent
9498ba724b
commit
34d756c2e1
93
.env.cms
Normal file
93
.env.cms
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
APP_NAME=Laravel
|
||||||
|
APP_ENV=production
|
||||||
|
APP_KEY=base64:VcFHbHg+rGs3CWrjPOvTpg+9am00e3GCAx4Iyrg9p+c=
|
||||||
|
APP_DEBUG=false
|
||||||
|
APP_URL=http://127.0.0.1:8081
|
||||||
|
|
||||||
|
LOG_CHANNEL=stack
|
||||||
|
LOG_DEPRECATIONS_CHANNEL=null
|
||||||
|
LOG_LEVEL=debug
|
||||||
|
|
||||||
|
# Change those to match your database settings
|
||||||
|
DB_CONNECTION=mysql
|
||||||
|
DB_HOST=db
|
||||||
|
DB_PORT=3306
|
||||||
|
DB_DATABASE=arcturus
|
||||||
|
DB_USERNAME=arcturus_user
|
||||||
|
DB_PASSWORD=arcturus_pw
|
||||||
|
|
||||||
|
BROADCAST_DRIVER=log
|
||||||
|
CACHE_DRIVER=file
|
||||||
|
FILESYSTEM_DISK=local
|
||||||
|
QUEUE_CONNECTION=sync
|
||||||
|
SESSION_DRIVER=database
|
||||||
|
SESSION_LIFETIME=120
|
||||||
|
|
||||||
|
MEMCACHED_HOST=127.0.0.1
|
||||||
|
|
||||||
|
REDIS_HOST=127.0.0.1
|
||||||
|
REDIS_PASSWORD=null
|
||||||
|
REDIS_PORT=6379
|
||||||
|
|
||||||
|
MAIL_MAILER=smtp
|
||||||
|
MAIL_HOST=mailhog
|
||||||
|
MAIL_PORT=1025
|
||||||
|
MAIL_USERNAME=null
|
||||||
|
MAIL_PASSWORD=null
|
||||||
|
MAIL_ENCRYPTION=null
|
||||||
|
MAIL_FROM_ADDRESS="hello@example.com"
|
||||||
|
MAIL_FROM_NAME="${APP_NAME}"
|
||||||
|
|
||||||
|
AWS_ACCESS_KEY_ID=
|
||||||
|
AWS_SECRET_ACCESS_KEY=
|
||||||
|
AWS_DEFAULT_REGION=us-east-1
|
||||||
|
AWS_BUCKET=
|
||||||
|
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||||
|
|
||||||
|
PUSHER_APP_ID=
|
||||||
|
PUSHER_APP_KEY=
|
||||||
|
PUSHER_APP_SECRET=
|
||||||
|
PUSHER_HOST=
|
||||||
|
PUSHER_PORT=443
|
||||||
|
PUSHER_SCHEME=https
|
||||||
|
PUSHER_APP_CLUSTER=mt1
|
||||||
|
|
||||||
|
VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
|
||||||
|
VITE_PUSHER_HOST="${PUSHER_HOST}"
|
||||||
|
VITE_PUSHER_PORT="${PUSHER_PORT}"
|
||||||
|
VITE_PUSHER_SCHEME="${PUSHER_SCHEME}"
|
||||||
|
VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
|
||||||
|
|
||||||
|
NITRO_CLIENT_PATH=http://127.0.0.1:3000
|
||||||
|
|
||||||
|
# If set to true, Atom will rename any colliding table names when migration the first time around
|
||||||
|
RENAME_COLLIDING_TABLES=false
|
||||||
|
|
||||||
|
# Only enable if you come from a CMS like RevCMS
|
||||||
|
# This will only work if your password is hashed using md5
|
||||||
|
# By default Atom CMS uses bcrypt, this is purely used to ease the process, when switching from a CMS using md5
|
||||||
|
CONVERT_PASSWORDS=false
|
||||||
|
|
||||||
|
# Enable this if your site is running through https, but you're experiencing issues with requests being made to "http"
|
||||||
|
FORCE_HTTPS=false
|
||||||
|
|
||||||
|
# Default language for the site
|
||||||
|
APP_LOCALE=de
|
||||||
|
|
||||||
|
# General paypal options
|
||||||
|
PAYPAL_MODE='sandbox'
|
||||||
|
PAYPAL_PAYMENT_ACTION='Order'
|
||||||
|
PAYPAL_CURRENCY='USD'
|
||||||
|
PAYPAL_NOTIFY_URL=
|
||||||
|
PAYPAL_LOCALE='en_US'
|
||||||
|
PAYPAL_VALIDATE_SSL=true
|
||||||
|
|
||||||
|
#PayPal Setting & API Credentials - sandbox
|
||||||
|
PAYPAL_SANDBOX_CLIENT_ID=
|
||||||
|
PAYPAL_SANDBOX_CLIENT_SECRET=
|
||||||
|
PAYPAL_SANDBOX_APP_ID=
|
||||||
|
|
||||||
|
#PayPal Setting & API Credentials - live
|
||||||
|
PAYPAL_LIVE_CLIENT_ID=
|
||||||
|
PAYPAL_LIVE_CLIENT_SECRET=
|
||||||
|
PAYPAL_LIVE_APP_ID=
|
6
.gitignore
vendored
6
.gitignore
vendored
@ -11,3 +11,9 @@ assets/usercontent/**/*.png
|
|||||||
~$*.xlsx
|
~$*.xlsx
|
||||||
export/
|
export/
|
||||||
assets/usercontent/imageproxy/
|
assets/usercontent/imageproxy/
|
||||||
|
atomcms/cache/*
|
||||||
|
atomcms/storage/*
|
||||||
|
atomcms/logs/*
|
||||||
|
!atomcms/cache/.gitkeep
|
||||||
|
!atomcms/storage/.gitkeep
|
||||||
|
!atomcms/logs/.gitkeep
|
||||||
|
42
README.md
42
README.md
@ -94,9 +94,8 @@ UPDATE emulator_settings SET `value`='/app/assets/swf/c_images/Badgeparts' WHERE
|
|||||||
```bash
|
```bash
|
||||||
docker compose up assets -d && \
|
docker compose up assets -d && \
|
||||||
docker compose up assets-build --build && \
|
docker compose up assets-build --build && \
|
||||||
docker compose up imager --build -d && \
|
docker compose up imgproxy --build -d && \
|
||||||
docker compose up arcturus --build -d && \
|
docker compose up arcturus --build -d
|
||||||
docker compose up backup -d
|
|
||||||
```
|
```
|
||||||
|
|
||||||
7. Update the: `nitro/renderer-config.json` and `nitro/ui-config.json` values to your setup. If the deployment is buggy or throws any errors check the json files for updates. then Build and Start Nitro
|
7. Update the: `nitro/renderer-config.json` and `nitro/ui-config.json` values to your setup. If the deployment is buggy or throws any errors check the json files for updates. then Build and Start Nitro
|
||||||
@ -176,6 +175,43 @@ python SQLGenerator.py
|
|||||||
docker compose restart arcturus
|
docker compose restart arcturus
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## AtomCMS
|
||||||
|
|
||||||
|
1. change [`.env.cms`](/.env.cms) to your needs
|
||||||
|
|
||||||
|
2. Check your permissions table. Use [**perms_groups.sql**](/arcturus/perms_groups.sql) if unclear. AtomCMS is not using the new permission layout so we are legacy supporting it by "copy" the most important values.
|
||||||
|
|
||||||
|
4. Start the CMS
|
||||||
|
```bash
|
||||||
|
docker compose up cms --build -d
|
||||||
|
```
|
||||||
|
|
||||||
|
5. Generate a new secret APP_KEY
|
||||||
|
```bash
|
||||||
|
docker compose exec cms php artisan key:generate
|
||||||
|
```
|
||||||
|
|
||||||
|
6. Open the CMS in the browser by default [`127.0.0.1:8081`](http://127.0.0.1:8081/) and do the basic setup.
|
||||||
|
|
||||||
|
7. Update automcms settings with HeidiSQL
|
||||||
|
|
||||||
|
```sql
|
||||||
|
UPDATE website_settings SET `value` = 'http://127.0.0.1:8080/api/imager/?figure=' WHERE `key` = 'avatar_imager';
|
||||||
|
UPDATE website_settings SET `value` = 'http://127.0.0.1:8080/swf/c_images/album1584' WHERE `key` = 'badges_path';
|
||||||
|
UPDATE website_settings SET `value` = 'http://127.0.0.1:8080/usercontent/badgeparts/generated' WHERE `key` = 'group_badge_path';
|
||||||
|
UPDATE website_settings SET `value` = 'http://127.0.0.1:8080/swf/dcr/hof_furni' WHERE `key` = 'furniture_icons_path';
|
||||||
|
|
||||||
|
UPDATE website_settings SET `value` = 'arcturus' WHERE `key` = 'rcon_ip';
|
||||||
|
UPDATE website_settings SET `value` = '3001' WHERE `key` = 'rcon_port';
|
||||||
|
|
||||||
|
-- check values - these values are for the perms_groups.sql
|
||||||
|
UPDATE website_settings SET `value` = '11' WHERE `key` = 'min_staff_rank';
|
||||||
|
UPDATE website_settings SET `value` = '12' WHERE `key` = 'min_maintenance_login_rank';
|
||||||
|
UPDATE website_settings SET `value` = '13' WHERE `key` = 'min_housekeeping_rank';
|
||||||
|
```
|
||||||
|
|
||||||
|
**ℹ Notice**: badgeparts generator must be set up in arcturus and all files must be synced with the badge_parts.nitro
|
||||||
|
|
||||||
## Create an archive/backup
|
## Create an archive/backup
|
||||||
|
|
||||||
### Export running containers
|
### Export running containers
|
||||||
|
75
atomcms/Dockerfile
Normal file
75
atomcms/Dockerfile
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
FROM php:8.2-apache as builder
|
||||||
|
|
||||||
|
ARG COMMIT=d0c28fb
|
||||||
|
|
||||||
|
WORKDIR /var/www/html
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
libcurl4-openssl-dev \
|
||||||
|
libfreetype6-dev \
|
||||||
|
libjpeg62-turbo-dev \
|
||||||
|
libpng-dev \
|
||||||
|
libonig-dev \
|
||||||
|
libssl-dev \
|
||||||
|
libzip-dev \
|
||||||
|
git \
|
||||||
|
zip \
|
||||||
|
unzip \
|
||||||
|
&& docker-php-ext-install -j$(nproc) curl gd mbstring pdo_mysql sockets fileinfo zip \
|
||||||
|
&& docker-php-ext-enable curl gd mbstring pdo_mysql sockets fileinfo zip
|
||||||
|
|
||||||
|
COPY --from=composer:lts /usr/bin/composer /usr/local/bin/composer
|
||||||
|
|
||||||
|
RUN git config --global --add safe.directory /var/www/html
|
||||||
|
RUN git clone --recurse-submodules https://github.com/ObjectRetros/atomcms.git .
|
||||||
|
RUN git checkout $COMMIT
|
||||||
|
|
||||||
|
RUN composer install
|
||||||
|
|
||||||
|
|
||||||
|
# ---------------------------------------------
|
||||||
|
FROM node:lts-alpine as npm-builder
|
||||||
|
|
||||||
|
WORKDIR /var/www/html
|
||||||
|
|
||||||
|
COPY --from=builder /var/www/html /var/www/html
|
||||||
|
|
||||||
|
RUN yarn install
|
||||||
|
RUN yarn run build:atom
|
||||||
|
|
||||||
|
|
||||||
|
# ---------------------------------------------
|
||||||
|
FROM php:8.2-apache
|
||||||
|
|
||||||
|
WORKDIR /var/www/html
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
libcurl4-openssl-dev \
|
||||||
|
libfreetype6-dev \
|
||||||
|
libjpeg62-turbo-dev \
|
||||||
|
libpng-dev \
|
||||||
|
libonig-dev \
|
||||||
|
libssl-dev \
|
||||||
|
libzip-dev \
|
||||||
|
&& docker-php-ext-install -j$(nproc) curl gd mbstring pdo_mysql sockets fileinfo \
|
||||||
|
&& docker-php-ext-enable curl gd mbstring pdo_mysql sockets fileinfo
|
||||||
|
RUN apt remove apt --autoremove -y --allow-remove-essential
|
||||||
|
|
||||||
|
RUN a2enmod rewrite
|
||||||
|
|
||||||
|
COPY --from=npm-builder /var/www/html /var/www/html
|
||||||
|
RUN rm -rf /var/www/html/node_modules
|
||||||
|
|
||||||
|
RUN chown -R www-data:www-data /var/www/html/storage \
|
||||||
|
&& chown -R www-data:www-data /var/www/html/bootstrap/cache
|
||||||
|
|
||||||
|
EXPOSE 80
|
||||||
|
|
||||||
|
ENV APACHE_DOCUMENT_ROOT /var/www/html/public
|
||||||
|
|
||||||
|
RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf \
|
||||||
|
&& sed -ri -e 's!AllowOverride None!AllowOverride All!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf
|
||||||
|
|
||||||
|
RUN echo 'max_execution_time = 120' >> /usr/local/etc/php/conf.d/docker-php-maxexectime.ini;
|
||||||
|
|
||||||
|
CMD ["apache2-foreground"]
|
0
atomcms/logs/.gitkeep
Normal file
0
atomcms/logs/.gitkeep
Normal file
0
atomcms/storage/.gitkeep
Normal file
0
atomcms/storage/.gitkeep
Normal file
14
compose.yaml
14
compose.yaml
@ -116,5 +116,19 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
networks: [nitro]
|
networks: [nitro]
|
||||||
|
|
||||||
|
cms:
|
||||||
|
build:
|
||||||
|
context: atomcms
|
||||||
|
depends_on:
|
||||||
|
- imager
|
||||||
|
- arcturus
|
||||||
|
ports:
|
||||||
|
- "8081:80"
|
||||||
|
volumes:
|
||||||
|
- ".env.cms:/var/www/html/.env"
|
||||||
|
- "./atomcms/storage:/var/www/html/storage/app/public"
|
||||||
|
- "./atomcms/logs:/var/www/html/storage/logs"
|
||||||
|
networks: [nitro]
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
nitro:
|
nitro:
|
||||||
|
Loading…
Reference in New Issue
Block a user