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
好易搞啫,大家嚟推廣下!