Hello, friends. As we all know Docker is a fascinating technology and in this post, we will take full advantage of it. In this post, you will learn how to deploy Ampache using Docker on a server.
Install Docker on Linux
The first step is to install Docker and for that, we present you with some tutorials in different Linux distributions.
If you are using Ubuntu: How to install Docker on Ubuntu 20.04
For CentOS 8: How to install Docker on CentOS 8?
For CentOS 7: How to install Docker CE on CentOS 7?
If you use Windows: How to install Docker in Windows 10?
Or, if you are using Debian 10: How to install Docker on Debian 10?
And using your distribution’s package manager, you can install Docker Compose. For example:
sudo apt update sudo apt install docker-compose
For Debian, Ubuntu, and derivatives.
sudo dnf install docker-compose
Or, for RHEL, CentOS and derivatives.
Once Docker and Docker compose are installed now is the Gits turn.
Deploy Ampache using Docker
Now with Docker installed on our operating system, it’s time to deploy Ampache.
To do this, first, create the folder where the Docker Compose file will be and access it.
mkdir ampache && cd ampache
You can change both the path and the name of the folder but set an indicative name.
Inside it, create a file called docker-compose.yml
with the help of a text editor. In this case, I will use nano.
nano docker.compose.yml
And add the following content:
version: '3' services: ampache: image: ampache/ampache:latest container_name: ampache restart: unless-stopped ports: - 80:80 volumes: - ./data/config:/var/www/config - ./data/log:/var/log/ampache - ./data/media:/media - ./data/mysql:/var/lib/mysql
Save the changes and close the editor.
Now, deploy the Docker container by running
sudo docker-compose up -d
This will start the whole process of downloading and deploying the images. When finished, set the necessary permissions on the created folders.
sudo chown www-data:www-data ./data/config -R sudo chmod 777 ./data/config -R
Before completing the installation via the web, we will need to obtain the default MySQL key. To do this, find out the Ampache container ID.
sudo docker ps
You will get an output screen similar to this one
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8e0e2c7dec77 ampache/ampache:latest "docker-entrypoint.s…" 5 minutes ago Up 2 seconds 0.0.0.0:80->80/tcp, :::80->80/tcp ampache
From it, we will know that the ID is 8e0e2c7dec77
and now check the logs for that container.
sudo docker logs 8e0e2c7dec77
You’ll get a widescreen output but you’ll see something similar to this
======================================================================== You can now connect to this MySQL Server using: mysql -uadmin -pbbgqpKn52t7c -h<host> -P<port> Please remember to change the above password as soon as possible! MySQL user 'root' has no password but only allows local connections
The password is what is after -p
in this case it is bbgqpKn52t7c
.
Now open a web browser and visit http://ip-server/install.php
and you can start the installation process with the language selection.
Next, set the configuration parameters.
And continue the process.
So, enjoy it.
Conclusion
In this post, you learned how with the help of Docker we can quickly have an Ampache installation on a server. This simple process allows us a lot of flexibility and portability.