Run Easy!Appointments - Appointment Scheduler System - in Docker 🌱

What is Easy!Appointments?

Easy!Appointments is a highly customizable web application that allows customers to book appointments with you via a sophisticated web interface. Moreover, it provides the ability to sync your data with Google Calendar so you can use them with other services. It is an open source project that you can download and install even for commercial use. Easy!Appointments will run smoothly with your existing website as it can be installed in a single folder of the server and of course share an existing database. -https://github.com/alextselegidis/easyappointments#about

Installing Docker

  1. Log into the Linux based device
  2. Run the following commands in the terminal
    # install prerequisites
    sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg-agent -y
    # add docker gpg key
    curl -fsSL https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release)/gpg | sudo apt-key add -
    # add docker software repository
    sudo add-apt-repository "deb [arch=$(dpkg --print-architecture)] https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release) $(lsb_release -cs) stable"
    # install docker
    sudo apt install docker-ce docker-compose containerd.io -y
    # enable and start docker service
    sudo systemctl enable docker && sudo systemctl start docker
    # add the current user to the docker group
    sudo usermod -aG docker $USER
    # reauthenticate for the new group membership to take effect
    su - $USER

Running Easy!Appointments

  1. Now that Docker is installed, run the following commands to setup the Easy!Appointments Docker container and run it
    # create working directories
    mkdir ~/docker/mariadb -p
    # set owner of working directories
    sudo chown "$USER":"$USER" ~/docker -R
    # create containers network
    docker network create containers
    # run the mariadb docker container
    docker run -d --name mariadb --network containers --network-alias db -e MYSQL_ROOT_PASSWORD=r00tp@ss -e MYSQL_USER=easy_appointments_rw -e MYSQL_PASSWORD=EasyAppo1ntm3nts! -e MYSQL_DATABASE=easy_appointments -v /home/$USER/docker/mariadb:/var/lib/mysql --restart=unless-stopped mariadb:latest
    # run the easy!appointments docker container
    docker run -d --name easy-appointments --network containers -p 8089:80 -e DB_HOST=mariadb -e DB_NAME=easy_appointments -e DB_USERNAME=easy_appointments_rw -e DB_PASSWORD=EasyAppo1ntm3nts! --restart=unless-stopped alextselegidis/easyappointments

Easy!Appointments Web Installer

  1. Open a web browser and navigate to http://DNSorIP:8089
  2. The Easy!Appointments Installation web installer should be load
  3. Complete the Administrator and Company form fields > Click Install Easy!Appointments
  4. Welcome to Easy!Appointments

Documentation: https://hub.docker.com/r/alextselegidis/easyappointments