Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
engine
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
AURA
engine
Commits
525d16b9
Commit
525d16b9
authored
2 years ago
by
David Trattnig
Browse files
Options
Downloads
Patches
Plain Diff
Chore(Make): Migrate docker cmd from run.sh
#112
parent
5f779151
No related branches found
No related tags found
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
Dockerfile
+4
-7
4 additions, 7 deletions
Dockerfile
Makefile
+51
-5
51 additions, 5 deletions
Makefile
run.sh
+0
-136
0 additions, 136 deletions
run.sh
with
55 additions
and
148 deletions
Dockerfile
+
4
−
7
View file @
525d16b9
FROM
python:3.9-slim
LABEL
maintainer="David Trattnig <david.trattnig@subsquare.at>"
# System Dependencies
...
...
@@ -15,20 +14,18 @@ RUN mkdir -p /srv
RUN
mkdir
-p
/srv/src
RUN
mkdir
-p
/srv/config
RUN
/usr/local/bin/python
-m
pip
install
--upgrade
pip
COPY
src /srv/src
COPY
config/sample
-docker
.engine.
ini /srv/config
/engine.ini
COPY
config/sample.engine.
docker.ini /etc/aura
/engine.ini
COPY
requirements.txt /srv
COPY
contrib/postgresql-requirements.txt /srv
COPY
meta.py /srv
COPY
run.sh /srv
COPY
run.py /srv
COPY
VERSION /srv
WORKDIR
/srv
RUN
pip3
install
-r
requirements.txt
RUN
pip3
install
-r
postgresql-requirements.txt
VOLUME
["/srv/socket", "/srv/logs", "/var/audio/source", "/var/audio/playlist"]
# Start the Engine
ENTRYPOINT
["./run.sh", "prod"]
ENTRYPOINT
["make"]
CMD
["run"]
This diff is collapsed.
Click to expand it.
Makefile
+
51
−
5
View file @
525d16b9
-include
build/base.Makefile
-include
build/docker.Makefile
.PHONY
:
help
help
:
@
echo
"
$(
APP_NAME
)
targets:"
...
...
@@ -17,9 +15,57 @@ help:
$(
call docker_help
)
# Settings
STEERING_BASE_URL
:=
http://0.0.0.0:8000
ENGINE_API_BASE_URL
:=
http://0.0.0.0:8008
TANK_BASE_URL
:=
http://0.0.0.0:8040
ENGINE_TANK_SESSION
:=
engine
ENGINE_TANK_SECRET
:=
rather-secret
# ENGINE_DB_HOST := 172.17.0.1
ENGINE_DB_HOST
:=
0.0.0.0
ENGINE_DB_NAME
:=
aura_engine
ENGINE_DB_USER
:=
aura_engine
ENGINE_DB_PASS
:=
1234
AURA_ENGINE_CORE_SOCKET
:=
"aura_engine_socket"
AURA_ENGINE_CONFIG
:=
${
CURDIR
}
/config/engine.docker.ini
AURA_AUDIO_STORE_SOURCE
:=
${
CURDIR
}
/../engine-core/audio/source
AURA_AUDIO_STORE_PLAYLIST
:=
${
CURDIR
}
/../engine-core/audio/playlist
AURA_LOGS
:=
${
CURDIR
}
/logs
TIMEZONE
:=
"Europe/Vienna"
DOCKER_RUN
=
@docker run
\
--name
$(
APP_NAME
)
\
--network
=
"host"
\
--mount
type
=
tmpfs,destination
=
/tmp
\
--device
/dev/snd
\
--group-add
audio
\
-e
TZ
=
$(
TIMEZONE
)
\
-e
STEERING_BASE_URL
=
$(
STEERING_BASE_URL
)
\
-e
ENGINE_API_BASE_URL
=
$(
ENGINE_API_BASE_URL
)
\
-e
TANK_BASE_URL
=
$(
TANK_BASE_URL
)
\
-e
ENGINE_TANK_SESSION
=
$(
ENGINE_TANK_SESSION
)
\
-e
ENGINE_TANK_SECRET
=
$(
ENGINE_TANK_SECRET
)
\
-e
ENGINE_DB_HOST
=
$(
ENGINE_DB_HOST
)
\
-e
ENGINE_DB_NAME
=
$(
ENGINE_DB_NAME
)
\
-e
ENGINE_DB_USER
=
$(
ENGINE_DB_USER
)
\
-e
ENGINE_DB_PASS
=
$(
ENGINE_DB_PASS
)
\
-v
aura_engine_socket:
"/srv/socket"
\
-v
"
$(
AURA_ENGINE_CONFIG
)
"
:
"/etc/aura/engine.ini"
:ro
\
-v
"
$(
AURA_AUDIO_STORE_SOURCE
)
"
:
"/var/audio/source"
:ro
\
-v
"
$(
AURA_AUDIO_STORE_PLAYLIST
)
"
:
"/var/audio/playlist"
:ro
\
-v
"
$(
AURA_LOGS
)
"
:
"/srv/logs"
\
-u
$(
UID
)
:
$(
GID
)
\
$(
DOCKER_ENTRY_POINT
)
\
autoradio/
$(
APP_NAME
)
# Targets
.PHONY
:
init.app
init.app
:
sudo
apt
install
-y
\
apt
install
-y
\
python3-wheel
\
python3-flask
\
python3-flask-sqlalchemy
\
...
...
@@ -30,7 +76,7 @@ init.app:
.PHONY
:
init.dev
init.dev
:
sudo
apt
install
-y
apt
install
-y
codespell
\
black
\
python3-flake8
\
...
...
@@ -64,4 +110,4 @@ log:
.PHONY
:
run
run
:
python3
run
.py
python3
src/aura_engine/app
.py
This diff is collapsed.
Click to expand it.
run.sh
deleted
100755 → 0
+
0
−
136
View file @
5f779151
#!/bin/bash
mode
=
"dev"
docker
=
"false"
#
# Run Script for AURA Engine
#
# Call with one of these parameters:
#
# - dev
# - prod
# - test
# - recreate-database
# - docker:dev
# - docker:prod
# - docker:build
# - docker:push
#
if
[[
$*
=
~ ^
(
dev|prod|test|recreate-database
)
$
]]
;
then
mode
=
$1
fi
if
[[
"
$1
"
==
*
"docker:"
*
]]
;
then
docker
=
"true"
mode
=
${
1
#*
:
}
fi
echo
"[ Run mode=
$mode
]"
echo
"[ Docker=
$docker
]"
# Check for the correct Python version
PYTHON_EXEC
=
"python3"
echo
"[ Using
$(
python3
-V
)
]"
# +++ DEFAULT COMMANDS +++ #
if
[[
$docker
==
"false"
]]
;
then
### Runs Engine in development mode ###
if
[[
$mode
==
"dev"
]]
;
then
echo
"Running Engine (Development)"
python3 run.py
fi
### Runs Engine ###
if
[[
$mode
==
"prod"
]]
;
then
/usr/bin/env
$PYTHON_EXEC
run.py
fi
### Runs Tests ###
if
[[
$mode
==
"test"
]]
;
then
# source python/bin/activate
echo
"Running Engine Tests"
python3
-m
unittest discover tests
fi
### CAUTION: This deletes everything in your database ###
if
[[
$mode
==
"recreate-database"
]]
;
then
/usr/bin/env
$PYTHON_EXEC
run.py
--recreate-database
fi
fi
# +++ DOCKER COMMANDS +++ #
if
[[
$docker
==
"true"
]]
;
then
BASE_DIR
=
$(
readlink
-f
.
)
echo
"Absolute base dir: "
$BASE_DIR
### Runs Engine Docker Container (Local build for development, if n/a pull from Docker Hub) ###
if
[[
$mode
==
"dev"
]]
;
then
if
[[
-z
"
${
AURA_ENGINE_CONFIG_PATH
}
"
]]
;
then
AURA_ENGINE_CONFIG_PATH
=
$(
readlink
-f
"
${
BASE_DIR
}
/config/docker.engine.ini"
)
fi
if
[[
-z
"
${
AURA_ENGINE_SOCKET_DIR
}
"
]]
;
then
AURA_ENGINE_SOCKET_DIR
=
$(
readlink
-f
"
${
BASE_DIR
}
/../engine-core/socket"
)
fi
if
[[
-z
"
${
AURA_ENGINE_CONTROL_CHANNEL
}
"
]]
;
then
AURA_ENGINE_CONTROL_CHANNEL
=
"127.0.0.1:1337"
fi
if
[[
-z
"
${
AURA_ENGINE_AUDIO_SOURCE_DIR
}
"
]]
;
then
AURA_ENGINE_AUDIO_SOURCE_DIR
=
$(
readlink
-f
"
${
BASE_DIR
}
/audio/source"
)
fi
if
[[
-z
"
${
AURA_ENGINE_AUDIO_PLAYLIST_DIR
}
"
]]
;
then
AURA_ENGINE_AUDIO_PLAYLIST_DIR
=
$(
readlink
-f
"
${
BASE_DIR
}
/audio/playlist"
)
fi
echo
AURA_ENGINE_CONFIG_PATH
=
"
$AURA_ENGINE_CONFIG_PATH
"
echo
AURA_ENGINE_SOCKET_DIR
=
"
$AURA_ENGINE_SOCKET_DIR
"
echo
AURA_ENGINE_CONTROL_CHANNEL
=
"
$AURA_ENGINE_CONTROL_CHANNEL
"
echo
AURA_ENGINE_AUDIO_SOURCE_DIR
=
"
$AURA_ENGINE_AUDIO_SOURCE_DIR
"
echo
AURA_ENGINE_AUDIO_PLAYLIST_DIR
=
"
$AURA_ENGINE_AUDIO_PLAYLIST_DIR
"
exec sudo
docker run
\
--network
=
"host"
\
--name
aura-engine
\
--rm
\
-u
$UID
:
$GID
\
-p
"
$AURA_ENGINE_CONTROL_CHANNEL
"
:1337/tcp
\
-v
"
$AURA_ENGINE_CONFIG_PATH
"
:
"/srv/config/engine.ini"
\
-v
"
$AURA_ENGINE_SOCKET_DIR
"
:
"/srv/socket"
\
-v
"
$AURA_ENGINE_AUDIO_SOURCE_DIR
"
:
"/var/audio/source"
:ro
\
-v
"
$AURA_ENGINE_AUDIO_PLAYLIST_DIR
"
:
"/var/audio/playlist"
\
-v
"
$BASE_DIR
/logs"
:
"/srv/logs"
\
-e
TZ
=
Europe/Vienna
\
autoradio/engine
fi
### Create Docker Image from local project ###
if
[[
$mode
==
"build"
]]
;
then
exec sudo
docker build
-t
autoradio/engine
.
fi
### Pushes the latest Docker Image to Docker Hub ###
if
[[
$mode
==
"push"
]]
;
then
exec sudo
docker push autoradio/engine
fi
fi
\ No newline at end of file
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment