Akaunting 新一代嘅開源會計系統,我就幾喜歡,之所以要介紹俾各位。我其實用開 Wave Accounting 嘅,不過 Akaunting 可以自己安裝,自己話事,又係用 Vue JS(新一代嘅 frontend 軟件),個畫面夠靚仔!
先去睇片:
有片係咪易明好多呢? 😛
個我整嘅 docker files:
Dockerfile 係用嚟整個 Akaunting image 用嘅:
FROM ubuntu:focal
ARG DEBIAN_FRONTEND=noninteractive
RUN \
echo "**** install build packages ****" && \
apt update && \
apt install -y software-properties-common && \
apt update && \
add-apt-repository ppa:ondrej/php && \
apt update && \
apt install -y \
apache2 \
php7.4 \
libapache2-mod-php7.4 \
php7.4-bcmath \
php7.4-common \
php7.4-imap \
php7.4-mbstring \
php7.4-xmlrpc \
php7.4-soap \
php7.4-gd \
php7.4-xml \
php7.4-intl \
php7.4-mysql \
php7.4-cli \
php7.4-ldap \
php7.4-zip \
php7.4-curl \
unzip \
curl
COPY php.ini /etc/php/7.4/apache2/php.ini
RUN \
echo "**** install akaunting ****" && \
curl -O -J -L https://akaunting.com/download.php?version=latest && \
mkdir -p /var/www/html/akaunting && \
unzip Akaunting_*.zip -d /var/www/html/akaunting/ && \
chown -R www-data:www-data /var/www/html/akaunting/ && \
chmod -R 755 /var/www/html/akaunting/
COPY akaunting.conf /etc/apache2/sites-available/akaunting.conf
RUN \
a2ensite akaunting && \
a2enmod rewrite && \
a2enmod ssl
EXPOSE 80 443
ENV APACHE_RUN_DIR=/var/run/apache2
ENV APACHE_RUN_USER=www-data
ENV APACHE_RUN_GROUP=www-data
ENV APACHE_LOG_DIR=/var/log/apache2
CMD ["apachectl", "-D", "FOREGROUND"]
docker-compose.yml 用嚟 create 啲 containers、volumes、networks :
version: '3.7'
services:
mysql:
container_name: $DB_CONTAINER
restart: unless-stopped
image: mariadb:latest
volumes:
- db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=${DB_PASS}
- MYSQL_USER=${DB_USER}
- MYSQL_PASSWORD=${DB_PASS}
- MYSQL_DATABASE=${DB_NAME}
ports:
- ${DB_PORT}:3306
networks:
- lan
akaunting:
image: <your_image_tag_here>
container_name: $AKAUNTING_CONTAINER
ports:
- $VIRTUAL_PORT:80
restart: always
environment:
- DEBUG=false
- TZ=${TZ}
- APP_LOCALE=${APP_LOCALE}
- DB_HOST=mysql
- DB_USER=${DB_USER}
- DB_PASS=${DB_PASS}
- DB_NAME=${DB_NAME}
- AKAUNTING_URL=${AKAUNTING_URL}
- AKAUNTING_COMPANY_NAME=${AKAUNTING_COMPANY_NAME}
- AKAUNTING_COMPANY_EMAIL=${AKAUNTING_COMPANY_EMAIL}
- AKAUNTING_ADMIN_EMAIL=${AKAUNTING_ADMIN_EMAIL}
- AKAUNTING_ADMIN_PASSWORD=${AKAUNTING_ADMIN_PASSWORD}
- AKAUNTING_BACKUPS_EXPIRY=${AKAUNTING_BACKUPS_EXPIRY}
depends_on:
- mysql
volumes:
- akadata:/var/www/html/akaunting
- akaapache:/etc/apache2/sites-available
networks:
- lan
volumes:
akadata:
name: $DATA_VOL
akaapache:
name: $CONF_VOL
db:
name: $DB_VOL
networks:
lan:
name: $VIRTUAL_NETWORK
driver: bridge
好易搞啫,大家嚟推廣下!


