Hướng dẫn Linux

Docker – Cách setup môi trường làm việc

Ở trong bài này thì đã hưỡng dẫn về cách cài docker và cách sử dụng image có sẵn, bây giờ chúng ta sẽ tìm hiểu sâu hơn, đó là tự tạo một môi trường làm việc bằng Docker.

Docker Container và Docker Image

Ở đây thì về cơ bản là có 2 thứ bạn cần lưu ý, đó là docker image và docker container.

Docker container: để cho đơn giản và dễ hiểu thì bạn cứ coi container như là một môi trường có đủ điều kiện để nhà phát triển có thể deploy ứng dụng và tương tác với các ứng dụng của họ thông qua môi trường đó.

Docker image: đây có thể coi như là một file hướng dẫn, trong đó chứa các câu lệnh để hướng dẫn chương trình docker tạo ra một docker container theo ý người sử dụng.

Vậy để có container đầu tiên ta phải tự tạo image cho riêng mình, các image thì lại có thể được build từ Dockerfile, vậy cách tạo và cú pháp của các Dockerfile như thế nào?

Một Dockerfile trông sẽ giống như thế này:

Một Dockerfile trông sẽ giống như thế này:

Các từ khoá quan trọng

FROM: dùng để thừa kế lại một image khác, tạo ra một base layer của image để có thể thực hiện các chỉnh sửa lên đó.

RUN: cho phép cài đặt ứng dụng (các layer mới khi cài ứng dụng sẽ ghi đè lên base layer của image gốc) trên image ban đầu và tạo ra image mới bằng cách commit các layer mới được cài đặt thêm, nói đơn giản là cho phép bạn chỉnh sửa image đã clone về tùy ý muốn.

WORKDIR: để set folder mặc định cho container, nghĩa là khi khởi container vừa khởi động thì sẽ ở thư mục do bạn set.

COPY: sao chép file từ máy host vào container.

CMD: để thực hiện câu lệnh sau khi hoàn tất tạo container, thường là gọi shell để có thể interact từ bên ngoài.

Rồi bây giờ hãy cùng thử tự tạo một image chạy ubuntu 18.04 và cài một vài phần mềm thiết yếu vào.

Để lấy image gốc từ ubuntu 18.04 thì ta chỉ cần gõ vào như thế này:

FROM ubuntu:18.04

Tiếp tục ta sẽ cài python3, vim, gcc và thiết lập thư mục mặc định cho container:

RUN apt -y update && apt install -y gcc python3 vim

RUN mkdir /workspace

WORKDIR /workspace

Và cuối cùng là gọi shell lên:

CMD [“/bin/bash”]

Và Dockerfile của ta có dạng như thế này:

Và Dockerfile của ta có dạng như thế này:

Bây giờ thì sử dụng command

docker build -t myworkspace .

để build ra một image có tên là myworkspace

Sau khi chờ một lúc thì image cũng đã build xong

Bây giờ chạy câu lệnh

docker run -h myworkspace –name myworkspace -v <path>:/workspace -it -d myworkspa
ce

để tạo ra container chạy image mà ta đã tạo trước đó với <path> là đường dẫn từ máy chủ mà ta muốn mount vào thư mục /workspace trong container

Sau đó gõ lệnh

docker container list

nếu bạn thấy có container đang chạy bằng image myworkspace thì có nghĩa là khởi chạy đã thành công

Cuối cùng chỉ cần chạy

docker exec -it myworkspace /bin/bash

để có shell tương tác với container

Vậy là ta đã có thể tự tạo cho mình một mội trường làm việc cơ bản với docker, lần sau chúng ta sẽ cùng tìm hiểu thêm, ví dụ như cách set các security option cho docker, để có thể tiện cho các việc như debug hệ thống, chơi ctf, …

Visits: 1779