Files
Robert Schmidt 8107939f08 Change OAI license to CSSL v1.0 (and others)
- all RAN code, CI code, configuration files, dockerfiles, in CSSL v1.0
- all deployment code (openshift, charts, ancillary files like shell
  scripts), in MIT
- documentation in CC-BY-4.0
- exceptions might apply and are listed in NOTICE
- there is a new LICENSES folder with all licenses
- CONTRIBUTIONS.md has been updated accordingly

For automated changes based on OAI PL v1.1:

    perl -i~ -0pe 's/\/\*.*Licensed to the OpenAirInterface.*openairinterface.org\n#?/\/*\n * SPDX-License-Identifier: LicenseRef-CSSL-1.0\n/s' **/*.{c,h,cpp}
    perl -i~ -0pe 's/\/\*.*Licensed to the OpenAirInterface.*openairinterface.org\n#?/\/*\n * SPDX-License-Identifier: LicenseRef-CSSL-1.0\n/s' **/*.ts
    perl -i~ -0pe 's/<!--.*Licensed to the OpenAirInterface.*openairinterface.org\n.*-->/<!-- SPDX-License-Identifier: LicenseRef-CSSL-1.0 -->/s' **/*.xml

The rest (cmake, files with missing license, cmake) manually.
2026-03-27 16:36:37 +01:00

51 lines
2.3 KiB
Markdown

<!-- SPDX-License-Identifier: CC-BY-4.0 -->
# Containerized development environment for OAI
## Description
This contains bash scripts for managing a ubuntu24 dockerized development enviroment for OAI. No need to install any
tools on host machines except for docker
- `bootstrap.sh` - build development environment image and install the following bash aliases in `~/.bash_aliases`:
* `oai_start_dev_env` - start the development environment container and detach
* `oai_stop_dev_env` - stop the development environment container
* `oai_destroy_dev_env` - remove the container, deleting all data that is not on mapped volumes. All packages installed
using `apt` or other methods in system folders (e.g. `/usr/`) will be removed.
* `oai_enter_dev_env` - enter development environment
## Installing
Run `./bootstrap.sh`. This will build the `ran-base:latest` image if its not present on the system and
build the `openair-dev:$USER` image and install the aliases above.
If not present, please add `source ~/.bash_aliases` into your `~/.bashrc`.
## Assumptions
- The `bootstrap.sh` script will read the current environment to generate the docker image, running
it with sudo is not recommended.
- Your home directory is shared with the home directory inside the docker container.
- You can use the `oai_enter_dev_env` alias to enter the container from any directory within
your home directory - your home directory is mapped directly in the container. If you
need other directories to be mapped, add extra volumes to the `docker-compose.yml`
## Using sudo in container
`sudo` is not necessary in the container as it should already have the linux capabilities that running
OAI requires. However it is still possible to run `sudo` in the container.
## Updating and preserving your image
Each image is personally tagged with username. You can update your image (e.g. install ubuntu system packages)
either through modifying the Dockerfile (not recommended) or installing packages manually through `apt` and
saving the docker container snapshot. If the environment is running just type
```
docker commit openair-dev-$USER openair-dev:$USER
```
This will update the image that is used in the aliases and preserve the modifications when you start the environment again.
If you ever want to reset your image to the base prepared here just rerun the `bootstrap.sh` script