mirror of
https://github.com/tuxbox-neutrino/docker-buildenv.git
synced 2025-08-26 05:02:43 +02:00
- Removed `.env.sample` and improved `.env` handling - Deleted `translate.py` and replaced it with `translate-md.py` - Refactored `readme.yml` to enhance translation and tagging workflow - Updated `.gitignore` with new exclusions - Major restructuring of `Dockerfile`, including improved ENV variables and layout - Extended `create-env.sh` with interactive prompts and validation - Improved error handling and structure in `docker-compose-wrapper` - Expanded `docker-compose.yml` with new environment variables and network settings - Moved and updated `init.sh`, `.bashrc`, and other files to `files/` directory - Added new scripts: `show-env.sh` for better diagnostics and `terminal-splash.txt` for enhanced display These changes optimize the build environment for improved stability and flexibility.
119 lines
3.9 KiB
YAML
119 lines
3.9 KiB
YAML
services:
|
|
tuxbox-build:
|
|
container_name: tuxbox-build
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
args:
|
|
DOCKER_BUILDENV_VERSION: ${DOCKER_BUILDENV_VERSION}
|
|
DOCKER_BUILDENV_GIT_URL: $DOCKER_BUILDENV_GIT_URL
|
|
|
|
PATH: "${USER_VOLUME_WORKDIR}/bin:${USER_VOLUME_BINDIR}:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
|
|
BUILDENV_GIT_URL: ${BUILDENV_GIT_URL}
|
|
BUILDENV_PREFIX: ${BUILDENV_PREFIX}
|
|
|
|
# Host user and group
|
|
USER_NAME: ${USER_NAME}
|
|
USER_ID: ${USER_ID}
|
|
USER_GROUP: ${USER_GROUP}
|
|
USER_GROUP_ID: ${USER_GROUP_ID}
|
|
USER_PASSWORD: ${USER_PASSWORD}
|
|
USER_DIR: ${USER_DIR}
|
|
|
|
# More Build-Args
|
|
DISPLAY: ${DISPLAY}
|
|
ENABLE_UI_TOOLS: ${ENABLE_UI_TOOLS}
|
|
GIT_EMAIL: ${GIT_EMAIL}
|
|
GIT_USER: ${GIT_USER}
|
|
HISTFILE_NAME: ${HISTFILE_NAME}
|
|
HISTFILE: ${HISTFILE}
|
|
BUILDENV_INSTALL_PREFIX: ${BUILDENV_INSTALL_PREFIX}
|
|
LOCAL_HOSTNAME: ${LOCAL_HOSTNAME}
|
|
LOCALE_LANG: ${LOCALE_LANG}
|
|
TZ: ${TZ}
|
|
TERM: ${TERM}
|
|
NVIDIA_VISIBLE_DEVICES: ${NVIDIA_VISIBLE_DEVICES}
|
|
QT_QUICK_BACKEND: ${QT_QUICK_BACKEND}
|
|
QT_XCB_GL_INTEGRATION: ${QT_XCB_GL_INTEGRATION}
|
|
USER_VOLUME_WORKDIR: ${USER_VOLUME_WORKDIR}
|
|
USER_VOLUME_DATADIR: ${USER_VOLUME_DATADIR}
|
|
START_PATH: ${START_PATH}
|
|
WWW_DOCDIR: ${WWW_DOCDIR}
|
|
EXPLORER_ENABLE: ${EXPLORER_ENABLE}
|
|
EXPLORER_GIT_URL: ${EXPLORER_GIT_URL}
|
|
XDG_CONFIG_HOME: ${XDG_CONFIG_HOME}
|
|
XDG_RUNTIME_DIR: ${XDG_RUNTIME_DIR}
|
|
|
|
image: tuxbox-build
|
|
|
|
environment:
|
|
DOCKER_BUILDENV_VERSION: ${DOCKER_BUILDENV_VERSION}
|
|
DOCKER_BUILDENV_GIT_URL: $DOCKER_BUILDENV_GIT_URL
|
|
BUILDENV_GIT_URL: ${BUILDENV_GIT_URL}
|
|
BUILDENV_PREFIX: ${BUILDENV_PREFIX}
|
|
PATH: "${USER_VOLUME_WORKDIR}/bin:${USER_VOLUME_BINDIR}:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
|
|
DISPLAY: ${DISPLAY}
|
|
ENABLE_UI_TOOLS: ${ENABLE_UI_TOOLS}
|
|
GIT_EMAIL: ${GIT_EMAIL}
|
|
GIT_USER: ${GIT_USER}
|
|
HISTFILE_NAME: ${HISTFILE_NAME}
|
|
HISTFILE: ${HISTFILE}
|
|
BUILDENV_INSTALL_PREFIX: ${BUILDENV_INSTALL_PREFIX}
|
|
LOCAL_HOSTNAME: ${LOCAL_HOSTNAME}
|
|
LOCALE_LANG: ${LOCALE_LANG}
|
|
TZ: ${TZ}
|
|
TERM: ${TERM}
|
|
NVIDIA_VISIBLE_DEVICES: ${NVIDIA_VISIBLE_DEVICES}
|
|
QT_QUICK_BACKEND: ${QT_QUICK_BACKEND}
|
|
QT_XCB_GL_INTEGRATION: ${QT_XCB_GL_INTEGRATION}
|
|
USER: ${USER_NAME}
|
|
USER_ID: ${USER_ID}
|
|
USER_GROUP: ${USER_GROUP}
|
|
USER_GROUP_ID: ${USER_GROUP_ID}
|
|
USER_PASSWORD: ${USER_PASSWORD}
|
|
USER_DIR: ${USER_DIR}
|
|
USER_VOLUME_WORKDIR: ${USER_VOLUME_WORKDIR}
|
|
USER_VOLUME_DATADIR: ${USER_VOLUME_DATADIR}
|
|
START_PATH: ${START_PATH}
|
|
WWW_DOCDIR: ${WWW_DOCDIR}
|
|
EXPLORER_ENABLE: ${EXPLORER_ENABLE}
|
|
EXPLORER_GIT_URL: ${EXPLORER_GIT_URL}
|
|
XDG_CONFIG_HOME: ${XDG_CONFIG_HOME}
|
|
XDG_RUNTIME_DIR: ${XDG_RUNTIME_DIR}
|
|
|
|
volumes:
|
|
- ${USER_VOLUME_WORKDIR}:${USER_VOLUME_WORKDIR}
|
|
- ${USER_VOLUME_BINDIR}:${USER_DIR}/bin
|
|
- ${USER_VOLUME_DATADIR}:/data
|
|
- ${USER_VOLUME_WORKDIR}/.config:/config
|
|
- ${USER_VOLUME_WORKDIR}/.config/git/config:${XDG_CONFIG_HOME}/git
|
|
- ${USER_DIR}/sstate-cache:${USER_DIR}/sstate-cache
|
|
- ${USER_DIR}/Archive:${USER_DIR}/Archive
|
|
- ${USER_DIR}/.ccache:${USER_DIR}/.ccache
|
|
- ${USER_DIR}/sources:${USER_DIR}/sources
|
|
- ${USER_DIR}/.ssh:${USER_DIR}/.ssh
|
|
|
|
|
|
# Optional for UI tools
|
|
- /tmp/.X11-unix:/tmp/.X11-unix
|
|
- /usr/lib/x86_64-linux-gnu/mesa:/usr/lib/x86_64-linux-gnu/mesa
|
|
|
|
devices:
|
|
- /dev/dri:/dev/dri # For GPU acceleration if needed
|
|
|
|
ports:
|
|
- "8080:80" # Webserver
|
|
- "222:22" # SSH
|
|
|
|
tty: true
|
|
working_dir: /
|
|
|
|
cap_add:
|
|
- SYS_ADMIN
|
|
|
|
restart: unless-stopped
|
|
|
|
networks:
|
|
default:
|
|
driver: bridge
|