.
This commit is contained in:
parent
4e8e4bca6f
commit
af0fc8b01b
|
|
@ -25,33 +25,28 @@ services:
|
|||
image: mongo:6
|
||||
networks:
|
||||
- rocketchat-net
|
||||
command: >
|
||||
bash -lc '
|
||||
set -e
|
||||
echo "Mongo ping bekleniyor..."
|
||||
# Mongo hazır olana kadar ping at
|
||||
until mongosh --host mongo:27017 --quiet --eval "db.adminCommand({ ping: 1 }).ok" | grep -q 1; do
|
||||
sleep 2
|
||||
done
|
||||
echo "Mongo ulaşılıyor. ReplSet durumu kontrol ediliyor..."
|
||||
# rs.status() initiated değilken hata atar; try/catch ile idempotent yapıyoruz
|
||||
mongosh --host mongo:27017 --quiet --eval "
|
||||
try {
|
||||
if (rs.status().ok === 1) {
|
||||
print('ReplSet zaten başlatılmış.');
|
||||
} else {
|
||||
throw new Error('status ok değil');
|
||||
command:
|
||||
- sh
|
||||
- -lc
|
||||
- |
|
||||
set -e
|
||||
echo "Waiting for Mongo to be ready..."
|
||||
until mongosh --host mongo:27017 --quiet --eval "db.adminCommand({ ping: 1 }).ok" | grep -q 1; do
|
||||
sleep 2
|
||||
done
|
||||
echo "Mongo is up. Checking/initializing replica set..."
|
||||
mongosh --host mongo:27017 --quiet --eval '
|
||||
try {
|
||||
if (rs.status().ok === 1) {
|
||||
print("Replica set already initiated.");
|
||||
} else {
|
||||
throw new Error("status not ok");
|
||||
}
|
||||
} catch (e) {
|
||||
print("Initiating replica set...");
|
||||
rs.initiate({ _id: "rs0", members: [ { _id: 0, host: "mongo:27017" } ] });
|
||||
}
|
||||
} catch (e) {
|
||||
print('ReplSet başlatılıyor...');
|
||||
rs.initiate({
|
||||
_id: \"rs0\",
|
||||
members: [{ _id: 0, host: \"mongo:27017\" }]
|
||||
});
|
||||
printjson(rs.status());
|
||||
}
|
||||
"
|
||||
'
|
||||
'
|
||||
deploy:
|
||||
restart_policy:
|
||||
condition: on-failure
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user