Cấu hình Docker sử dụng HTTP Proxy Server

675

Cấu hình Docker sử dụng HTTP Proxy ServerCuongquach.com | Khi dịch vụ Docker của bạn được chạy trong một hệ thống mạng nội bộ, ngăn biệt với hệ thống public internet thì khá là khó khăn để có thể ‘pull‘ những Docker Image từ bên ngoài như Docker Hub, kết nối public từ Docker Container đang chạy. Vậy thì thường các hệ thống đó sẽ có một máy chủ proxy đi public như Squid và các máy chủ nội bộ sẽ đi thông qua máy chủ này để đảm bảo vấn đề bảo mật nhưng vẫn kết nối Internet public được.

Nhu cầu chúng ta trong bài này, đó là cấu hình dịch vụ Docker sử dụng thông tin HTTP Proxy Server để kết nối Internet Public cho phép tải các Docker Image về sử dụng hoặc cho Docker Container đi public internet qua Proxy Server. Nếu không thì bạn sẽ hay gặp các trường hợp lỗi như sau .

Vậy bài viết sẽ giúp bạn xử lý 3 trường hợp:

  • Pull image từ Docker public khi dùng lệnh ‘docker pull‘.
  • Pull image base khi build Docker Image.
  • Kết nối internet public từ Docker Container

cau-hinh-docker-su-dung-http-proxy-server

1. Pull docker image

Đây là mô hình đầu tiên đó là cấu hình thông tin HTTP Proxy Server để dịch vụ Docker có thể kết nối ra Internet Public. Docker client sẽ tạo các truy vấn REST đến dịch vụ Docker, từ đó dịch vụ Docker sẽ đảm nhận các phần việc còn lại.

Tạo một file chứa thông tin biến môi trường về Proxy Server dành cho Docker sử dụng.

Xác định file khởi động của dịch vụ Docker.

+ systemd (CentOS 7+ / Ubuntu 16.04+)

Yeah, file khởi động dịch vụ Docker trên hệ thống systemd đây : /usr/lib/systemd/system/docker.service

Giờ thêm dòng cấu hình sau vào file này dưới section [Service] , để khi dịch vụ Docker khởi động lại sẽ load các biến môi trường từ file ‘/etc/sysconfig/docker‘ mà bạn quy định.

Khởi động lại dịch vụ Docker để load thông tin biến môi trường.

Thử pull lại Docker Image nào.

+ init (CentOS 6- / Ubuntu 14.04-)
Tạo file môi trường thông tin proxy server cho docker.

Khởi động lại dịch vụ Docker.

2. Build docker image

Khi mà bạn build một Docker Image thì dịch vụ Docker sẽ khởi tạo một Container từ Base Image để build cũng như hoạt động khác là Docker Container được khởi chạy từ Image, thì các Container này cũng có nhu cầu truy xuất Internet Public qua HTTP Proxy Server.

Khi build docker image thì bạn cần truyền các biến môi trường riêng về thông tin Proxy Server cho quá trình build hoạt động xử lý tải dữ liệu từ bên ngoài public như cài đặt chương trình, cập nhật chương trình,…

3. Docker Container sử dụng Proxy

Bạn cần truyền biến môi trường về Proxy Server vào trong Container khi chạy một Docker Container từ Image . Lúc này Container sẽ có thông tin về HTTP Proxy Server để có thể thực hiện các kết nối public khi có nhu cầu.

Khá là đơn giản để xử lý tình huống sử dụng Docker trong hệ thống nội bộ cần kết nối Proxy Server để có thể kết nối Internet public. Chúc các bạn thành công.

Nguồn: https://cuongquach.com/

LEAVE A REPLY