-
Notifications
You must be signed in to change notification settings - Fork 2
/
Dockerfile
43 lines (34 loc) · 1.35 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#Copyright (C) 2020 David D. Anastasio
#This program is free software: you can redistribute it and/or modify
#it under the terms of the GNU Affero General Public License as published
#by the Free Software Foundation, either version 3 of the License, or
#(at your option) any later version.
#This program is distributed in the hope that it will be useful,
#but WITHOUT ANY WARRANTY; without even the implied warranty of
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
#GNU Affero General Public License for more details.
#You should have received a copy of the GNU Affero General Public License
#along with this program. If not, see <https://www.gnu.org/licenses/>.
FROM docker.io/library/fedora
RUN dnf install -y libmcrypt-devel sqlite sqlite-devel uuid-devel vim php nodejs caddy php-fpm composer
WORKDIR /app
COPY . /app
RUN composer update
RUN composer install --no-interaction
RUN cp /app/.env.example /app/.env
RUN touch /app/database/database.db
RUN yes "no" | php artisan key:generate
RUN php artisan migrate --force
RUN npm i npm@latest -g
RUN npm install
RUN npm run prod
RUN php artisan optimize:clear
RUN php artisan storage:link
RUN php artisan view:cache
RUN php artisan config:cache
RUN php artisan route:cache
RUN mkdir /var/run/php-fpm
RUN chmod 777 /app -R
VOLUME /app/database
EXPOSE 8000
CMD php-fpm && caddy run --config Caddyfile