nếu db và app mỗi cái nằm ở 1 file docker-compose khác và bạn muốn connect từ app tới db thì bạn cần cho chúng (db và app) nằm cùng 1 network, trường hợp này cũng khá đơn giản. Demo code:
# db-docker-compose.ymlversion:"3.5"services:db:image: mysql
networks:- shared-net
networks:shared-net:driver: bridge
# app-docker-compose.ymlversion:"3.5"services:app:image: laravel
networks:- db_shared-net
networks:db_shared-net:# tên này = tên service db "_" tên networkexternal:true
FrontEnd là tập hợp của rất nhiều thứ. Bao gồm như UX, UI, Code (HTML, CSS, JS...) với web nói chung. Nếu bạn thấy phần UI của bạn làm tốt có thể đi theo hướng UX/UI design, còn phần code nói chung bây giờ dùng JS nhiều nên cơ bản phải khá logic 1 chút. Thuật toán thì ko cần quá giỏi đâu, vẫn code được. Hy vọng bạn lựa chọn đúng.
Cho phép e hỏi ngoài lề một tí ạ. Là một developer mới làm việc đc hơn 1 năm nay, e nhận thấy mình yêu thích làm ở mảng frontend hơn backend, một phần do thấy đc mình ko mạnh về thuật toán cho lắm, bù lại e có chút tính thẫm mĩ nên các công việc phát triển có liên quan UI e làm khá dễ dàng. Không biết là có hướng phát triển nào phù hợp nếu e chọn theo đuổi con đường frontend ko ạ?
Thực tế là mình cũng đang có 1 server chạy kiểu này, 1 con nginx bên ngoài chạy cho cả app thường và app dùng Docker. Với các app chạy với Docker bạn chỉ cần proxy_pass vào cổng của container nginx trong bài này là được nhé (8000). Bạn xem ví dụ file cấu hình cho 1 domain ở con nginx bên ngoài của mình [ở đây](https://gist.github.com/maitrungduc1410/84ce3953f774235360dcb376befca15b, ở đó mình proxy_pass vào cổng 6060 nơi app Docker đang chạy.
Trường hợp của bạn, bạn cứ follow theo bài này của mình setup app Laravel với Docker gồm có 2 container nginx và app, sau đó ở nginx môi trường ngoài, bạn theo hướng dẫn kia của mình, tạo file cấu hình cho domain, sau đó proxy_pass request vào cổng của container nginx là được.
có 2 con nginx nom có vẻ "thừa", đúng là như vậy, bạn có thể bỏ container nginx đi, như thế thì bạn cần phải map port của container app ra ngoài, và phải cấu hình nginx bên ngoài khác đi 1 chút, khi bạn hiểu Docker hơn thì bạn tự vọc cách này nhé
@maitrungduc1410 là con nginx có ở môi trường ngoài sẵn rồi.
Mình chỉnh dùng docker laravel thôi được không.
=> Dùng nginx của host trỏ đến docker laravel
Nếu như docker csdl năm ở 1 file docker-compose.yml khác thì sao nhỉ?
Dùng này sao vậy bạn
DB_CONNECTION=mysql
DB_HOST=db
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=laraveluser
DB_PASSWORD=laraveluserpass
THẢO LUẬN
Cảm ơn bạn đã ủng hộ @dangrom
bạn lại dùng
proxy_passnhư mình đã rép bạn từ comment trước đó rồi nhé.Bạn có Nginx ở môi trường ngoài mà muốn trỏ vào các app Docker thì cứ dùng
proxy_passnhénếu
dbvàappmỗi cái nằm ở 1 file docker-compose khác và bạn muốn connect từapptớidbthì bạn cần cho chúng (dbvàapp) nằm cùng 1 network, trường hợp này cũng khá đơn giản. Demo code:@ddthanhdat tuyệt vời



sợ hãi các thứ
))
FrontEnd là tập hợp của rất nhiều thứ. Bao gồm như UX, UI, Code (HTML, CSS, JS...) với web nói chung. Nếu bạn thấy phần UI của bạn làm tốt có thể đi theo hướng UX/UI design, còn phần code nói chung bây giờ dùng JS nhiều nên cơ bản phải khá logic 1 chút. Thuật toán thì ko cần quá giỏi đâu, vẫn code được. Hy vọng bạn lựa chọn đúng.
hy vọng bài viết này có ích với các bạn
Theo bác những phẩm chất có thể trở thành CTO là gì ạ?
Bác làm CTO cty nào ạ. Cho em sang làm cùng với
Tay to quá bro. toàn dùng ảnh cho nhanh
1.mình mở docker phpmyadmin ở port 8081. 2. Giờ mình dùng nginx ở host để trỏ domain vào port đó sao vậy?
@maitrungduc1410 Cám ơn bạn, mình làm được rồi.
Cho phép e hỏi ngoài lề một tí ạ. Là một developer mới làm việc đc hơn 1 năm nay, e nhận thấy mình yêu thích làm ở mảng frontend hơn backend, một phần do thấy đc mình ko mạnh về thuật toán cho lắm, bù lại e có chút tính thẫm mĩ nên các công việc phát triển có liên quan UI e làm khá dễ dàng. Không biết là có hướng phát triển nào phù hợp nếu e chọn theo đuổi con đường frontend ko ạ?
@fuxx I'm glad that this article can help you. Thank for your comment.
Btw, it's Vietnamese
@ddthanhdat được quá ấy chứ bạn
).
Thực tế là mình cũng đang có 1 server chạy kiểu này, 1 con nginx bên ngoài chạy cho cả app thường và app dùng Docker. Với các app chạy với Docker bạn chỉ cần
proxy_passvào cổng của containernginxtrong bài này là được nhé (8000). Bạn xem ví dụ file cấu hình cho 1 domain ở con nginx bên ngoài của mình [ở đây](https://gist.github.com/maitrungduc1410/84ce3953f774235360dcb376befca15b, ở đó mìnhproxy_passvào cổng6060nơi app Docker đang chạy.Trường hợp của bạn, bạn cứ follow theo bài này của mình setup app Laravel với Docker gồm có 2 container
nginxvàapp, sau đó ở nginx môi trường ngoài, bạn theo hướng dẫn kia của mình, tạo file cấu hình cho domain, sau đóproxy_passrequest vào cổng của containernginxlà được.Thanks bạn
Cám ơn bác ạ

Cám ơn bạn đã theo dõi bài viết ^^
Cám ơn chủ post đã giải thích ạ
@maitrungduc1410 là con nginx có ở môi trường ngoài sẵn rồi. Mình chỉnh dùng docker laravel thôi được không. => Dùng nginx của host trỏ đến docker laravel
Nếu như docker csdl năm ở 1 file docker-compose.yml khác thì sao nhỉ? Dùng này sao vậy bạn DB_CONNECTION=mysql DB_HOST=db DB_PORT=3306 DB_DATABASE=laravel DB_USERNAME=laraveluser DB_PASSWORD=laraveluserpass