Ở 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?
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”]
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, …
Views: 1964