mirror of
https://github.com/chris2511/xca.git
synced 2026-09-12 19:51:05 +05:00
63 lines
1.8 KiB
Docker
63 lines
1.8 KiB
Docker
|
|
This is a short overview of how to build and run XCA using docker.
|
|
|
|
Install docker
|
|
==============
|
|
|
|
To install docker, follow the instructions provided at
|
|
https://docs.docker.com/install/
|
|
|
|
Build XCA container
|
|
===================
|
|
|
|
Use the following command to build XCA container:
|
|
|
|
docker build --rm --tag xca .
|
|
|
|
This will build a container named "xca" using default configuration.
|
|
|
|
Build options
|
|
-------------
|
|
|
|
There are some options to customize build. Use dockers "--build-arg"
|
|
option to add options.
|
|
|
|
CODENAME : code name of ubuntu version
|
|
example: --build-arg CODENAME=jammy
|
|
PARALLELMFLAGS : make flags for parralel build
|
|
example: --build-arg PARALLELMFLAGS=-j2
|
|
|
|
Run XCA
|
|
=======
|
|
|
|
Once the container is built, run it using the following command:
|
|
|
|
docker run --rm -it -e USER_ID=`id -u` --network=host \
|
|
-e DISPLAY=$DISPLAY -e "QT_X11_NO_MITSHM=1" \
|
|
xca
|
|
|
|
Share local directory
|
|
---------------------
|
|
|
|
Use docker volumes to share a local directory. This might be useful to store data base files.
|
|
|
|
mkdir -p ./some_local_directory
|
|
docker run --rm -it -e USER_ID=`id -u` --network=host \
|
|
-e DISPLAY=$DISPLAY -e "QT_X11_NO_MITSHM=1" \
|
|
-v ./some_local_directory:/backup \
|
|
xca
|
|
|
|
This makes ./some_local_directory accessible in the container as /backup.
|
|
|
|
Run over X-Forwarding with SSH
|
|
------------------------------
|
|
|
|
To run with X-Forwarding over an SSH connection, you can mount .Xauthority. If the application windows doesn't show up, likely you also want to switch to OpenGL done in software:
|
|
|
|
docker run --rm -it --network=host \
|
|
-e DISPLAY=$DISPLAY -e "QT_X11_NO_MITSHM=1" -e LIBGL_ALWAYS_SOFTWARE=1 \
|
|
-v $HOME/.Xauthority:/home/user/.Xauthority \
|
|
xca
|
|
|
|
Note: the environment variable USER_ID doesn't need to be set, since USER_ID is derived from ownership of .Xauthority file.
|