Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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
languagebash
sudo apt update
sudo apt install git-lfs
git clone https://bitbucket.alma.cl/scm/asw/acs.git

Configurations

  1. Install SELinux

    Code Block
    languagebash
    sudo apt install policycoreutils selinux-utils selinux-basics
    sudo selinux-activate
    sudo selinux-config-enforcing
  2. Edit docker .env file (you can use your favourite editor)

    Code Block
    languagebash
    cd Virtualization/Docker/Dev/
    sudo nano .env
    
    Code Block
    languagetext
    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

  1. To run a Docker container with ACS:

    Code Block
    languagebash
    docker-compose run --name acs_centos7_env centos7 bash
  2. To open a shell inside the container

    Code Block
    languagebash
    docker exec -it acs_centos7_env bash

Install ACS

...

languagebash

...