Daha önce, mysql'nin tek tıklamayla dağıtımını uygulamak için docker kullanıyordum. Oracle çok sorun yaratıyor. Dockerfile'ı yazmak çok zor. Dikkate alınması gereken çok fazla mantık var. Yanlışlıkla büyük bir marcelo-ochoa'nın docker dosyasını gördüm. Test ettikten sonra gerçekten mümkün. Burada paylaşın Herkese kadar.
İşletim sistemi: ubuntu16.04 TLS
docker Sürümü: 18.09.2
oracle Sürümü: 19.2.0.0.0
19.2.0 dockerfile olduğunu görebilir ve kurulu kurulum paketinin dosya adını kontrol edebilirsiniz.
# ll toplam 68 -rwxr-xr-x 1 kök kök 114822 Şub 08:12 checkDBStatus.sh -rwxr-xr-x 1 kök kök 90522 Şub 08:12 checkSpace.sh -rw-r - r-- 1 kök kök 4922 Şub 08:12 Checksum.ee -rwxr-xr-x 1 kök kök 301222 Şub 08:12 createDB.sh -rw-r - r-- 1 kök kök 920422 Şubat 08:12 dbca.rsp.tmpl -rw-r - r-- 1 kök kök 687822 Şubat 08:12 db_inst.rsp -rw-r - r-- 1 kök kök 340522 Şubat 08:12 Dockerfile -rwxr-xr-x 1 kök kök 252622 Şub 08:12 installDBBinaries.sh -rwxr-xr-x 1 root root 652622 Şub 08:12 runOracle.sh -rwxr-xr-x 1 kök kök 101522 Şubat 08:12 runUserScripts.sh -rwxr-xr-x 1 kök kök 75822 Şub 08:12 setPassword.sh -rwxr-xr-x 1 kök kök 93222 Şubat 08:12 setupLinuxEnv.sh -rwxr-xr-x 1 root root 67822 Şub 08:12 startDB.sh # cat Dockerfile | grep INSTALL_FILE_1 INSTALL_FILE_1 = "V981623-01.zip" \ COPY --chown = oracle: dba $ INSTALL_FILE_1 $ INSTALL_RSP $ INSTALL_DB_BINARIES_FILE $ INSTALL_DIR /Burada görebileceğiniz gibi, kurulum paketinin adı V981623-01.zip
2.1, 19c kurulum paketini kopyalayın ve bir ayna oluşturun
V981623-01.zip kurulum paketini bu dizine kopyalayın, kurulumu başlatmak için çalıştırın
cd / opt / docker-images / OracleDatabase / SingleInstance / dockerfiles
./buildDockerImage.sh -v 19.2.0 -e
2.2. Yansıtma işlemi:
2.3. Kurulum tamamlandı:
2.4. Aynayı görüntüleyin:
docker görüntüleri
Yukarıdaki adımda aynamız hazır ve temelde aşağıda büyük bir problem yok.
3.1, başlatma örneği
#docker run --name oracle19c -p 1521: 1521 -p 5500: 5500 -v / oradata / oracle19c: / opt / oracle / oradata oracle / veritabanı: 19.2.0-ee"VERİTABANI KULLANIMA HAZIR!" Kelimesi göründüyse ve aşağıdaki günlük durdurulduysa, kabı başka bir pencerede görüntüleyebilirsiniz.
3.2, kabı görüntüleyin
docker ps -a
3.3, veri dosyasını kontrol edin
ll / oradata / oracle19c / ORCLCDB
docker ps -a
docker exec -it abe5 / bin / bash
sqlplus sys / 1RmJBpJIsmU = 1 @ ORCLCDB sysdba olarak
SQL > v $ örneğinden örnek_adı, durum seçin;
Bu noktada, veritabanımız 19c konuşlandırılmıştır.
Önceki temel komut sadece iki cümledir:
./buildDockerImage.sh -v 19.2.0 -e
docker run --name oracle19c -p 1521: 1521 -p 5500: 5500 -v / oradata / oracle19c: / opt / oracle / oradata oracle / veritabanı: 19.2.0-ee
Oracle'ı tek bir tıklama ile dağıtmak için her zaman bir dockerfile yazmayı denemek istemişimdir. Oracle için çok önemli olmasa da, bugün diğer büyük adamların dockerfile'ına atıfta bulunduktan sonra onu kendim değiştirdim. Süreç hala oldukça basit. İlgileniyorsanız, yapabilirsiniz Dockerfile içeriğini inceleyin.