[บันทึกกันลืม] JupyterHub ด้วย Docker

นาน ๆ ทำที บันทึกไว้ก่อน

รันคำสั่งนี้ เพื่อ ติดตั้ง JupyterHub รุ่นที่ทดลอง 5.2.1 ใน Docker

docker run -d -p 8000:8000 --name jupyterhub01 quay.io/jupyterhub/jupyterhub jupyterhub
docker exec -it jupyterhubdemo bash -c "pip install jupyterlab"
docker exec -it jupyterhubdemo bash -c "jupyterhub --generate-config"
docker exec -it jupyterhubdemo bash -c "adduser admin"
docker exec -it jupyterhubdemo bash -c "adduser jupyteruser01"

จะสร้าง user ชื่อ admin และ jupyteruser01 โดย admin จะเป็น Administrator ส่วน jupyteruser01 ให้เป็น user ทั่วไป ตรงนี้จะสร้าง user อยู่ภายใน docker container

container นี้ จะชื่อว่า ‘jupyterhub01’ เข้าถึงได้ที่ port 8000 (หากต้องการเปลี่ยนก็ทำได้)

จากนั้น สร้างไฟล์ jupyterhub_config.py อย่างน้อย ต้องมีการตั้งค่าดังนี้

c = get_config()  #noqa
c.JupyterHub.authenticator_class = 'jupyterhub.auth.PAMAuthenticator'
c.Authenticator.admin_users = ('admin')
c.Authenticator.allow_all = True

บรรทัดล่างสุดนั้น เป็นการอนุญาตให้ทุกคนที่เข้าใช้งานได้ และให้ ‘admin’ มีหน้าที่เป็น Admin

จากนั้น ให้ copy file นี้ เข้าไปใน Docker ด้วยคำสั่ง

docker cp jupyterhub_config.py jupyterhub01:/srv/jupyterhub/jupyterhub_config.py
docker restart jupyterhub01

ซึ่งคนที่เป็น admin จะมีหน้า Admin ให้ใช้งาน จากการคลิก File > Control Panel > Admin หน้าตาดังภาพ

admin สามารถเข้าไปใน Session ของผู้ใช้คนอื่นได้ เหมาะสำหรับใช้กับงานด้าน การเรียนการสอน

หวังว่าจะเป็นประโยชน์ครับ

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.