Welcome
ACS (ALMA Common Software) is a framework for implementing a distributed container/component software machine. You can use it to develop and run custom components with some desired functionality. In these tutorial series we will explore ACS main features, from and for someone new to this tool, in order to gain familiarity with the framework. Hopefully we will find some interesting ways of using ACS, coding simple experimental components. ACS may seem big and complex at first, but we will code our way out of this image, in a condensed approach.
Before running the tutorial examples and exercises you will have to install ACS. In the next section we provide instructions to install ACS in a docker container.
References:
In this tutorial we will write and run example ACS modules in Python, Java and C++ inside a Docker container based in a CentOS 7 image, in an Ubuntu 20.04 machine.
Clone repository
Code Block |
---|
|
sudo apt update
sudo apt install git-lfs
git clone https://bitbucket.alma.cl/scm/asw/acs.git |
Configurations
Install SELinux
Code Block |
---|
|
sudo apt install policycoreutils selinux-utils selinux-basics
sudo selinux-activate
sudo selinux-config-enforcing |
Edit docker .env file (you can use your favourite editor)
Code Block |
---|
|
cd Virtualization/Docker/Dev/
sudo nano .env
|
Code Block |
---|
|
USER_NAME=<my_user>
GROUP_NAME=<my_group>
USER_ID=1000
GROUP_ID=1000
ALMA_DIR=/external/docker/alma
HOME_DIR=/external/docker/home
REPO_DIR=/absolute/path/to/cloned/repo
IMAGE_OS=centos7
CONTAINER_DIR=centos7 |
Run container
To run a Docker container with ACS:
Code Block |
---|
|
docker-compose run --name acs_centos7_env centos7 bash |
To open a shell inside the container
Code Block |
---|
|
docker exec -it acs_centos7_env bash |
Install ACS
Check Installing ACS for full details. TL;DR:
Code Block |
---|
|
# install external products
cd /Repos
source LGPL/acsBUILD/config/.acs/.bash_profile.acs
cd ExtProd/INSTALL
make all
# install ACS
cd ../..
make build |
Configurar directorio INTROOT
...
...