arnaucube
arnaucube/configsPublic Self-hosted repository
configs/launch-container/lc
launch-container/lcRaw
 1#!/bin/bash
 2
 3if [[ $1 == "help" ]]; then
 4  echo "lc (Launch Container) help:
 5===========================
 6  - lc new <dockerfile> <container_name> <image_name>: create new image &
 7  container using the selected dockerfile
 8    - available dockerfiles: go, rust
 9  - lc stop <container_name>: stop container
10  - lc rm <container_name>: remove container
11  - lc ls: list containers
12  - lc stop <container_name> <image_name>: stop container
13  - lc <container_name>: launch container
14  "
15  exit 0
16elif [[ $1 == "new" ]]; then
17  # $2: lang, $3: container_name, $4: image_name
18  lang=$2
19
20  if [[ $lang == "rust" ]]; then
21    lang="Dockerfile.rust"
22  elif [[ $lang == "go" ]]; then
23    lang="Dockerfile.go"
24  else
25    echo "available dockerfiles: go, rust"
26    exit 0
27  fi
28
29  sudo docker build -t $4 -f $lang .
30  sudo docker run -it --entrypoint=/bin/bash --name $3 $4
31  exit 0
32elif [[ $1 == "stop" ]]; then
33  # $2: container_name
34  sudo docker stop $2
35  exit 0
36elif [[ $1 == "rm" ]]; then
37  # $2: container_name
38  sudo docker stop $2
39  sudo docker rm $2
40  exit 0
41elif [[ $1 == "ls" ]]; then
42  sudo docker ps -a
43  exit 0
44fi
45
46# $1: container_name, $2: image_name
47sudo docker start $1
48sudo docker container exec -it $1 bash