Bản cập nhật năm 2018:điều này áp dụng cho Openshift 2. Phiên bản 3 rất khác và tuy nhiên các quy tắc chung của linux và quy mô được áp dụng, các chi tiết đã lỗi thời.
Mặc dù câu trả lời của @MartinB là kịp thời và chính xác, đó chỉ là một liên kết, vì vậy hãy để tôi đưa các yếu tố cần thiết vào đây.
Giả sử rằng việc thiết lập một DB không chia sẻ đã được thực hiện xong, bạn cần tìm máy chủ và cổng của nó. Bạn có thể ssh
vào ứng dụng của bạn (ứng dụng có DB) hoặc sử dụng rhc
:
rhc ssh -a appwithdb
env | grep MONGODB
env
mang tất cả các biến môi trường và grep lọc chúng để chỉ hiển thị những biến liên quan đến Mongo. Bạn sẽ thấy một cái gì đó như:
OPENSHIFT_MONGODB_DB_HOST=xxxxx-yyyyy.apps.osecloud.com
OPENSHIFT_MONGODB_DB_PORT=zzzzz
xxxxx is the ID of the gear that Mongo sits on
yyyyy is your domain/namespace
zzzzz is MongoDB port
Bây giờ, bạn có thể sử dụng những thứ này để tạo kết nối với DB từ bất kỳ đâu trong môi trường Openshift của bạn. Một ứng dụng khác phải sử dụng URL xxxxx-yyyyy:zzzzz. Bạn có thể lưu trữ chúng trong các biến tùy chỉnh để bảo trì dễ dàng hơn.
$ rhc env-set \
MYOWN_DB_HOST=xxxxx-yyyyy \
MYOWN_DB_PORT=zzzzz \
MYOWN_DB_PASSWORD=****** \
MYOWN_DB_USERNAME=admin..... \
MYOWN_DB_NAME=dbname...
Và sau đó sử dụng các biến môi trường thay vì các biến tiêu chuẩn. Chỉ cần nhớ rằng chúng không được cập nhật tự động khi DB chuyển đi.