Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password

Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password

Trong ví dụ này mình sẽ thực hiện cài đặt và deploy một server apache tomcat bằng docker. Sau đó tiến hành tùy chỉnh docker container tomcat như sửa port, thêm account tomcat…

Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password.

Bước 1: pull images tomcat từ docker repository về máy bằng lệnh:

docker pull tomcat

Sau khi pull, chạy lệnh docker images để liệt kê các images đang có trên máy sẽ thấy image tomcat.

Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password

Bước 2: Tạo container từ images tomcat vừa pull về

docker run -it tomcat

Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password

Mặc định tomcat chạy trên port 8080

Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password

Kiểm tra ip của container trên bằng lệnh:

docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name_or_id

Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password

Như vậy container tomcat trên đang chạy trên ip 172.17.0.2 với port là 8080

Hướng dẫn lấy ip của docker container

Bước 3: tiến hành sửa username/password tomcat.

Truy cập vào container bạn sẽ thấy cấu trúc của nó giống hệt với folder cài tomcat thông thường

Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password

Để sửa username/password ta vào file /conf/tomcat-users.xml để thay đổi thông tin user

Ví dụ:

Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password

Vì container tomcat chạy trên một ip khác do đó để truy cập trang quản trị của tomcat ta cần cho phép truy cập trang quản trị từ các địa không phải local:

sửa file webapps/host-manager/META-INF/context.xml

<Context antiResourceLocking="false" privileged="true" >
  <!-- comment đoạn này lại -->
  <!--<Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />-->
</Context>

sau đó restart lại container:

Kết quả:

Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password

Ta có thể đăng nhập bằng username/password vừa tạo:

Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password

Bước 4: tiến hành đổi port tomcat

Sửa file conf/server.xml

Tìm đoạn code dưới đây:

<Connector port="8080" protocol="HTTP/1.1"
       connectionTimeout="20000"
       redirectPort="8443" />

Hiện tại tomcat đang sử dụng port 8080, ta chỉ cần thay số 8080 thành port muốn sử dụng là được

Ví dụ muốn chuyển port thành 8081

<Connector port="8081" protocol="HTTP/1.1"
       connectionTimeout="20000"
       redirectPort="8443" />

Demo:

Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password Hướng dẫn cài Apache Tomcat bằng docker, sửa port, username/password

 

Okay, Done!

References:

https://hub.docker.com/_/tomcat

stackjava.com