https://github.com/rk0cc/cs3103pico
Alpine Linux based Docker image for running CS3103
https://github.com/rk0cc/cs3103pico
alpine-linux cityu cityuhk cityuniversityofhongkong docker python2
Last synced: about 2 months ago
JSON representation
Alpine Linux based Docker image for running CS3103
- Host: GitHub
- URL: https://github.com/rk0cc/cs3103pico
- Owner: rk0cc
- License: agpl-3.0
- Created: 2025-03-05T15:07:43.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-10-22T13:49:39.000Z (8 months ago)
- Last Synced: 2026-02-02T07:52:42.490Z (5 months ago)
- Topics: alpine-linux, cityu, cityuhk, cityuniversityofhongkong, docker, python2
- Language: Dockerfile
- Homepage: https://hub.docker.com/repository/docker/rk0d/cs3103pico
- Size: 58.6 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Dockerfile for completing CS3103 tutorials
Alpine Linux based images to provide all necessaries environment for completing CS3103 tutorial locally.
> [!WARNING]
> This Docker image is designed for compiling and running programs in Linux environment locally. The executables are **incompatible** to run in CS Gateway server.
> If you wish submitting executables for assessments, it is preferred to use the gateway server instead.
## Available tags
* `pre`: Synchronize content from repository and push to Docker Hub if the image built successfully.
* ``, `latest`: Images built based on `stable` branch content for each quarters of the year where `YYYY` and `MM` refers as full year and month in digits accordingly. `latest` tag is referring to the most recent released tag of ``.
* The images are pushed to Docker Hub in January, April, July and October.
### Postfix tags (`-`)
* (No postfix): Basic variant that it only offers installed dependencies.
* `-pip`: It offers `pip2` command for installing Python 2 packages
* It is not recommended to use `pip2` in Python 2 since it has reached end of life at 2020. Therefore, avoid use this postfix if the tutorials or assignments do not require using additional packages.
* `-powershell`: Replace default shell of this image from `zsh` to `pwsh`.
* `-manless`: Excluding manpage and packages' documentation packages to minimize image size.
Each image tags delivers the latest dependencies updates.
## Installed dependencies
(Exclude all bundled dependencies from Alpine Linux)
* Python 2
* Python 3 (Since `202507`)
* `pip3` included
* GNU compilers
* `gcc`
* `g++`
* `make` and `automake`
* (De)compression
* `xz`
* `bzip2`
* `zip` and `unzip`
* `mc`
* `nano`
* `htop`
* `zsh` (except `-powershell`)
* Default terminal when running in container.
* `man`
* Alpine Linux does not bundled with documentations when installing packages. Therefore, to get documentations from installed packages, please run `/opt/fetch_manpage.sh` afterward.
* It does not included in `-manless` tag, as well as `/opt/fetch_manpage.sh` is absented.
* `valgrind` (Since `202504`)
* `gdb` (Since `202507`)
## Usage
Simply run this command after the image pulled:
```bash
docker run -it --name "(Container name)" --mount type=bind,src=/path/to/CS3103/src,dst=/mnt/CS3103 rk0d/cs3103pico:latest
```
Then, you can access any CS3103 source codes in `/mnt/CS3103` directory.
## License
AGPL 3
## Links
* [GitHub repository](https://github.com/rk0cc/cs3103pico)