run-docker 763 B

123456789101112131415161718192021
  1. #!/usr/bin/env bash
  2. set -eu
  3. cmd="${1:-start}"
  4. container_name=lkmc
  5. target_dir=/root/linux-kernel-module-cheat
  6. if [ "$cmd" = start ]; then
  7. sudo docker start -ai "$container_name"
  8. elif [ "$cmd" = sh ]; then
  9. # https://stackoverflow.com/questions/39794509/how-to-open-multiple-terminals-in-docker
  10. sudo docker exec -it "$container_name" bash "$@"
  11. elif [ "$cmd" = setup ]; then
  12. # --privileged for KVM:
  13. # https://stackoverflow.com/questions/48422001/launching-qemu-kvm-from-inside-docker-container
  14. sudo docker run --name "$container_name" --net host -i --privileged -t -w "${target_dir}" -v "$(pwd):${target_dir}" ubuntu:18.04 bash
  15. elif [ "$cmd" = DELETE ]; then
  16. sudo docker rm "$container_name"
  17. else
  18. echo "error: unknown action: ${cmd}" 1>&2
  19. exit 2
  20. fi