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.
Bước 2: Tạo container từ images tomcat vừa pull về
docker run -it tomcat
Mặc định tomcat chạy trên port 8080
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
Như vậy container tomcat trên đang chạy trên ip 172.17.0.2
với port là 8080
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
Để sửa username/password ta vào file /conf/tomcat-users.xml
để thay đổi thông tin user
Ví dụ:
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ả:
Ta có thể đăng nhập bằng username/password vừa tạo:
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:
Okay, Done!
References: