| .. | ||
| main | ||
| Dockerfile | ||
| Dockerfile.base | ||
| Dockerfile.dev | ||
| Dockerfile.prod.pkg | ||
| Dockerfile.prod.src | ||
| entrypoint.sh | ||
| odoo.conf | ||
| pyenv-version.txt | ||
| python-versions.txt | ||
| README.md | ||
| repo_manifest_gen_org_prefix_path.py | ||
| wait-for-psql.py | ||
ERPLibre - Docker
Those images are prepared to permit better portability and reproducibility of ERPLibre release.
Due the the growing code of ERPLibre, it could also simplify development.
NOTE: Those Dockerfiles themselves are in heavy development for now. Incompatibilities between releases are normal until the interface is stabilized.
Pre-requirements
- Basic knowledge with Docker, Linux and bash
- Latest Docker version
Files representations
- Dockerfile.base: This Dockerfile represents the base Docker image layer reused by other child layers.
- Dockerfile.dev: This Dockerfile is specialized in development.
- Dockerfile.prod{pkg,src}: Dockerfile.prod.* is a Docker image specialized for production systems. Dockerfile.prod.pkg reuses official Debian files from Odoo.com. Dockerfile.prod.src fetches the Odoo source code as the ERPLibre runtime.
Getting started
Be sure to start daemon docker
systemctl start docker
Building the docker images
cd docker
docker build -f Dockerfile.base -t technolibre/erplibre-base:12.0 .
docker build -f Dockerfile.prod.pkg -t technolibre/erplibre:12.0-pkg .
Running ERPLibre using Docker-Compose
Go at the root of this git project.
cd ERPLibre
docker-compose -f docker-compose.yml up -d
Diagnostic Docker-Compose
Show docker-compose information
docker-compose ps
docker-compose logs IMAGE_NAME
Show docker information
docker ps -a
docker volume ls
docker inspect DOCKER_NAME
Connect to a running docker
docker exec -ti DOCKER_NAME bash
docker exec -u root -ti DOCKER_NAME bash
Commands for debugging
docker run -p 8069:8069 --entrypoint bash -ti DOCKER_NAME
docker exec -ti DOCKER_NAME bash
docker exec -u root -ti DOCKER_NAME bash
docker run --name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -e POSTGRES_USER=odoo -e POSTGRES_DB=postgres postgre
export
db_host = "host.docker.internal"
docker stats erplibre_ERPLibre_1
Cleaning
Delete all system
docker system prune -a
Delete docker image
docker image prune
docker rmi $(docker images -q)
Delete volumes
docker-compose rm -v
Delete containers
docker rm $(docker ps -a | grep -v IMAGE | awk '{print $1}')
Delete volume
docker volume prune
Change docker directory
You can change the docker directory by editing file /etc/docker/daemon.json
{
"data-root": "/home/docker"
}
And restart docker service. You can delete or move all older locations of docker.
Update docker
When building your docker with script
./script/docker_build.sh
List your docker version
docker image
You need to push your docker image and update your tag, like 1.0.1:
docker push technolibre/erplibre:VERSION