Compare commits
6 Commits
62ea3b87d8
...
489400ad70
Author | SHA1 | Date | |
---|---|---|---|
489400ad70 | |||
77702a36f0 | |||
2286ee380b | |||
63165795ca | |||
d66df792c6 | |||
eddc4fddeb |
43
app/dolibarr.conf
Normal file
43
app/dolibarr.conf
Normal file
@ -0,0 +1,43 @@
|
||||
server {
|
||||
listen 80 default_server;
|
||||
listen [::]:80 default_server;
|
||||
|
||||
# SSL configuration
|
||||
#
|
||||
listen 443 ssl default_server;
|
||||
listen [::]:443 ssl default_server;
|
||||
ssl_certificate /etc/ssl/certs/dolibarr-selfsigned.crt;
|
||||
ssl_certificate_key /etc/ssl/private/dolibarr-selfsigned.key;
|
||||
#ssl_protocols TLSv1.3;
|
||||
|
||||
root /app/dolibarr/htdocs;
|
||||
|
||||
# Add index.php to the list if you are using PHP
|
||||
index index.html index.htm index.php index.nginx-debian.html;
|
||||
|
||||
server_name _;
|
||||
|
||||
location / {
|
||||
# First attempt to serve request as file, then
|
||||
# as directory, then fall back to displaying a 404.
|
||||
try_files $uri $uri/ =404;
|
||||
}
|
||||
|
||||
# pass PHP scripts to FastCGI server
|
||||
#
|
||||
location ~ \.php$ {
|
||||
include snippets/fastcgi-php.conf;
|
||||
#
|
||||
# # With php-fpm (or other unix sockets):
|
||||
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
|
||||
# # With php-cgi (or other tcp sockets):
|
||||
# fastcgi_pass 127.0.0.1:9000;
|
||||
}
|
||||
|
||||
# deny access to .htaccess files, if Apache's document root
|
||||
# concurs with nginx's one
|
||||
#
|
||||
location ~ /\.ht {
|
||||
deny all;
|
||||
}
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
#!/bin/sh
|
||||
/usr/sbin/apt-get install php8.2 php8.2-common php8.2-fpm -y # PHP
|
||||
/usr/sbin/apt-get install vim file bash-completion procps nginx screen git less -y # Utils
|
||||
/usr/sbin/apt-get install mariadb-client mariadb-server -y # MariaDB Server + Client
|
3
app/scripts/create_databases.sh
Executable file
3
app/scripts/create_databases.sh
Executable file
@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
service mariadb status > /dev/null 2>&1 || service mariadb start
|
||||
mariadb --user=root < /app/scripts/dolibarr.sql && echo "Dolibarr user and DB created."
|
4
app/scripts/dolibarr.sql
Normal file
4
app/scripts/dolibarr.sql
Normal file
@ -0,0 +1,4 @@
|
||||
CREATE USER 'dolibarr'@'localhost' IDENTIFIED BY 'dolipass';
|
||||
CREATE DATABASE IF NOT EXISTS dolibarr;
|
||||
GRANT ALL PRIVILEGES on dolibarr.* TO 'dolibarr'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
24
app/scripts/healthchecker.sh
Executable file
24
app/scripts/healthchecker.sh
Executable file
@ -0,0 +1,24 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Check if nginx is running
|
||||
/etc/init.d/nginx status >/dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
NGINX="nginx failed!"
|
||||
fi
|
||||
|
||||
# Check if MariaDB is running
|
||||
/etc/init.d/mariadb status >/dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
MARIADB="mariadb failed!"
|
||||
fi
|
||||
|
||||
# Check if PHP-FPM is running
|
||||
/etc/init.d/php8.2-fpm status >/dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
PHP82="php8.2-fpm failed!"
|
||||
fi
|
||||
|
||||
if [ -n "$NGINX$MARIADB$PHP82" ]; then
|
||||
echo "$NGINX $MARIADB $PHP82" && exit 1
|
||||
fi
|
||||
|
6
app/scripts/install-dependencies.sh
Executable file
6
app/scripts/install-dependencies.sh
Executable file
@ -0,0 +1,6 @@
|
||||
#!/bin/sh
|
||||
apt-get install nginx -y
|
||||
apt-get install php8.2 php8.2-common php8.2-fpm php8.2-mbstring php8.2-gd php8.2-curl php8.2-xml php8.2-imap php8.2-zip php8.2-intl php8.2-mysql -y # PHP
|
||||
#apt-get install vim file bash-completion procps nginx screen git sudo less -y # Utils
|
||||
apt-get install git sudo -y # Utils
|
||||
apt-get install mariadb-client mariadb-server -y # MariaDB Server + Client
|
25
dockerfile
25
dockerfile
@ -4,14 +4,31 @@ WORKDIR /app
|
||||
|
||||
COPY app /app
|
||||
|
||||
RUN apt-get update && apt-get full-upgrade -y
|
||||
RUN apt-get update && apt-get full-upgrade -y && apt-get autoremove -y && apt-get autoclean -y
|
||||
|
||||
RUN /app/sury-php-repo.sh
|
||||
#RUN /app/scripts/sury-php-repo.sh
|
||||
|
||||
RUN /app/install-dependencies.sh
|
||||
RUN /app/scripts/install-dependencies.sh
|
||||
|
||||
RUN git clone --branch 21.0 --single-branch --depth 1 https://github.com/Dolibarr/dolibarr.git
|
||||
|
||||
RUN chown -R www-data:www-data /app/dolibarr
|
||||
|
||||
RUN openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/dolibarr-selfsigned.key -out /etc/ssl/certs/dolibarr-selfsigned.crt -subj "/CN=dolibarr"
|
||||
|
||||
RUN chmod 0440 /etc/ssl/private/dolibarr-selfsigned.key && chmod 0444 /etc/ssl/certs/dolibarr-selfsigned.crt && chown www-data:www-data /etc/ssl/private/dolibarr-selfsigned.key && chown www-data:www-data /etc/ssl/certs/dolibarr-selfsigned.crt
|
||||
|
||||
RUN /app/scripts/create_databases.sh
|
||||
|
||||
RUN mv /app/dolibarr.conf /etc/nginx/sites-available/dolibarr.conf && rm /etc/nginx/sites-enabled/default
|
||||
|
||||
ENV PORT=8080
|
||||
|
||||
EXPOSE 8080
|
||||
|
||||
CMD ["/app/launch-daemons.sh"]
|
||||
#CMD ["/app/launch-daemons.sh"]
|
||||
|
||||
ENTRYPOINT ["/app/scripts/launch-daemons.sh"]
|
||||
|
||||
HEALTHCHECK --interval=5m --timeout=30s \
|
||||
CMD /app/scripts/healthchecker.sh || exit 1
|
||||
|
Loading…
x
Reference in New Issue
Block a user