Docker

Sử dụng docker: Tạo container có giao diện

Docker là  công cụ tạo máy ảo (container) trên linux nhanh gọn và đơn giản. Bài viết này sẽ hướng dẫn các bạn tạo một container có giao diện UI trên Linux.

Xem thêm:

Docker là gì?

Sử dụng Docker như thế nào?

Truyền lệnh từ Host vào Docker Container

Sử dụng Docker: Export/Import, Save/Load Container

Sử dụng Docker: Dockerfile

Cài đặt và sử dụng Docker Registry

Tạo container

Để tạo một container có giao diện mình sẽ sử dụng một docker image có tên là consol/centos-xfce-vnc. 

Trước hết bạn cần cài đặt docker trên hệ thống, nếu chưa cài đặt bạn có thể xem hướng dẫn cài tại đây

Cú pháp để tạo một docker container (centos) có giao diện như sau:

docker run --shm-size=512m  -p 5901:5901 -p 6901:6901 --restart always -e VNC_RESOLUTION=1920x1080 -e VNC_PW=123456 --user $(id -u):$(id -g) -v /opt/:/opt/ --name VNC_CENTOS_REMOTE -it consol/centos-xfce-vnc:1.3.0 /bin/bash

Trong đó:

  • “docker run”: tạo container
  • “–shm-size=512m”: đặt kích thướng ram disk cho container, nếu bạn để mặc định sẽ gây ra trường hợp chrome bị cash do thiếu memory
  • “-p 5901:5901 -p 6901:6901”: map port remote cho vnc và trình duyệt
  • “–restart always”: luôn khởi động container
  • “-e VNC_RESOLUTION=1920×1080”: độ phân giải của container
  • “-e VNC_PW=123456”: password truy cập container
  • “–user $(id -u):$(id -g)”:  thay đổi user và group mặc định của container bằng user hiện tại
  • “-v /opt/:/opt/”: liên kết thư mục opt trong container và host
  • “–name VNC_CENTOS_REMOTE”: tên container
  • “-it consol/centos-xfce-vnc:1.3.0”: tên image phiên bản 1.4.0

Console Log:

[root@ITFROMZERO ~]# docker run --shm-size=512m  -p 5901:5901 -p 6901:6901 --restart always -e VNC_RESOLUTION=1920x1080 -e VNC_PW=123456 --user $(id -u):$(id -g) -v /opt/:/opt/ --name VNC_CENTOS_REMOTE -it consol/centos-xfce-vnc:1.3.0 /bin/bash
Unable to find image 'consol/centos-xfce-vnc:1.4.0' locally
1.4.0: Pulling from consol/centos-xfce-vnc
a02a4930cb5d: Already exists
91ee5a98d25d: Pull complete
34dcfe98c544: Pull complete
37148de94ed8: Pull complete
be9af41cfe6b: Pull complete
8f4a76f550be: Pull complete
40639c912cdd: Pull complete
99e23e969a7d: Pull complete
29d1aff5ee47: Pull complete
802daa865e1f: Pull complete
6cdff890f573: Pull complete
853c1abd2a9f: Pull complete
bd256b6f9b16: Pull complete
03cad9d85168: Pull complete
edaa82c31e98: Pull complete
Digest: sha256:b3592f6ca3692abdd10194e23853f4eae0f2b95800dbadae84d53182d429bd5d
Status: Downloaded newer image for consol/centos-xfce-vnc:1.4.0
USER_ID: 0, GROUP_ID: 0

------------------ update chromium-browser.init ------------------

... set window size 1920 x 1080 as chrome window size!


------------------ change VNC password  ------------------

------------------ start noVNC  ----------------------------

------------------ start VNC server ------------------------
remove old vnc locks to be a reattachable container
start vncserver with param: VNC_COL_DEPTH=24, VNC_RESOLUTION=1920x1080
...
start window manager
...


------------------ VNC environment started ------------------

VNCSERVER started on DISPLAY= :1
        => connect via VNC viewer with 172.17.0.18:5901

noVNC HTML client started:
        => connect via http://172.17.0.18:6901/?password=...



------------------ EXECUTE COMMAND ------------------
Executing command: '/bin/bash'
USER_ID: 0, GROUP_ID: 0
bash-4.2# exit

Truy cập vào container

Sau khi thực thi câu lệnh trên, bạn có thể truy cập container từ VNC Viewer (cổng 5901) hoặc trình duyệt Web (cổng 6901) .

Remote bằng trình duyệt:

http://192.168.1.90:6901

Remote bằng VNC Viewer

Mở VNC Viewer và remote đến IP với cổng 5901

Ví dụ: 192.168.1.90:5901

 

Để tham khảo thêm hoặc tạo các container phiên bản khác (Ubuntu,..) các bạn truy cập https://hub.docker.com/r/consol/centos-xfce-vnc

Chúc các bạn thành công.

Share:
Leave a Comment
Share
Published by
Admin
Tags: Docker

Recent Posts

Hướng dẫn nhắn tin Telegram trên Linux Terminal

Như các bạn đã biết thì Telegram là một dịch vụ tin nhắn tuyệt vời…

4 năm ago

Cài đặt Apache Tomcat 9 trên Ubuntu 20.04

Apache Tomcat là gì? Apache Tomcat là một web server HTTP được phát triển bởi…

4 năm ago

04/2020 – Build PC chơi game giá 20 triệu

20 triệu có lẽ là một mức chi phí khá lý tưởng cho một máy…

4 năm ago

Sử dụng Microsoft Edge Chromium: Thay đổi tìm kiếm mặc định, cài Chrome Extensions

Micosoft chính thức phát hành Microsoft Edge Chromium Microsoft đã chính thức tung ra trình…

4 năm ago

CentOS 8 – Những thay đổi và tính năng

CentOS 8 đã phát hành ngày 25/09/2019, phiên bản 8 lần này có những thay đổi…

5 năm ago

Top 5 Laptop cho dân văn phòng 2019

Thời buổi công nghệ phát triển, phần lớn công việc của con người đều có…

5 năm ago