Apa yang perlu saya lakukan untuk mengaktifkan ini? Saya sudah menambahkan tty: true di file compose saya… Tapi tidak membantu. Container lain yang saya jalankan shell-nya bisa terhubung. Yang ini tidak. Jika saya coba “execute” - saya mendapatkan error ini:
Tapi saya masih belum bisa masuk ke shell sebenarnya dari container.
Jadi tidak ada cara untuk masuk ke shell? Saya mencoba menjalankan perintah untuk aplikasi saya guna menguji sesuatu. Mungkin lewat perintah docker exec?
itu kemungkinan berarti mereka tidak menyertakan perintah bash dalam image docker. Jadi saya rasa Anda tidak akan bisa terhubung ke sana dengan shell.
Apakah /bin/sh berhasil?
Jika dockernya open source, Anda mungkin bisa melihat program apa saja yang ada di path /bin dan menjalankannya sebagai perintah menggunakan execute console.
Inilah masalahnya: untuk menjalankan perintah di dalam container, perintah tersebut harus ADA di dalam image container. Jika image Anda TIDAK memiliki shell, tidak ada yang bisa Anda eksekusi.
Sekarang, Anda mungkin bisa MENAMBAHKAN shell, tetapi itu membutuhkan pengetahuan tentang BAGAIMANA image tersebut dibangun. Untungnya, ini adalah build open source. Berikut Dockerfile-nya:
Dari sini, saya bisa melihat bahwa image ini dibangun di atas Alpine Linux. JADI, buat Dockerfile yang menggunakan image Anda sebagai base, dan tambahkan bash ke dalamnya.
FROM vikunja/vikunja
RUN apk add --no-cache bash
Kemudian bangun image baru:
docker build newimage
Jika Anda menggunakan file docker-compose untuk menjalankan container Anda, Anda perlu mengubah image menjadi “newimage” (atau nama lain sesuai keinginan Anda). Setelah itu, Anda bisa mengeksekusi bash di dalam container.
OK. Terima kasih. Saya harus mencari tahu tentang hal itu. Hal ini membuat proses pembaruan jadi agak merepotkan. Mungkin saya akan bertanya di forum Vikunja (Vikunja) kenapa tidak ada shell. Saya sedang mencoba menjalankan perintah diagnostik.
Secara realistis, jika yang ingin Anda lakukan hanyalah debugging, maka menambahkan shell untuk itu bisa dianggap sebagai bagian dari proses debugging. Itu tidak harus permanen… setelah Anda mendapatkan informasinya, kembalilah ke image yang disediakan dan lanjutkan.
…tentu saja, Anda mungkin akan mengalami sesuatu yang sering saya alami: mengaktifkan debug justru memperbaiki masalahnya.