- Activepieces harus diperbarui setelah mencadangkan PostgreSQL dan file .env.
- AP_ENCRYPTION_KEY memungkinkan pemulihan koneksi terenkripsi setelah pemulihan basis data.
- Instalasi resmi menetapkan versi menggunakan AP_VERSION untuk mencegah perubahan yang tidak terduga.
- Docker Compose v2 wajib digunakan untuk penerapan resmi saat ini.
Memperbarui ActivePieces bukan sekadar mengunduh image baru dan memulai ulang container. Platform ini menyimpan alur, koneksi, eksekusi, dan rahasia terenkripsi dalam komponen yang berbeda, sehingga perubahan yang dilakukan tanpa cadangan dapat membuat instalasi tampak berfungsi, tetapi tanpa akses ke kredensial atau otomatisasi Anda.
Prosedurnya juga berbeda tergantung pada cara Anda menginstal platform. Instance rumahan dengan PGLite tidak diperbarui dengan cara yang sama seperti penerapan resmi dengan PostgreSQL, Redis, server utama, dan beberapa worker. Dalam panduan ini, kita akan melihat... Cara memperbarui Activepieces dengan benarPeriksa apakah semuanya berfungsi dan kembalikan ke versi sebelumnya jika muncul masalah.
Sebelum memperbarui: Identifikasi bagaimana Anda menginstal Activepieces

Activepieces saat ini menawarkan dua deployment Docker utama. Sangat penting untuk mengetahui deployment mana yang Anda gunakan karena Data tersebut disimpan dengan cara yang berbeda. dalam setiap modalitas.
- Instalasi resmi dengan Docker Compose: Metode ini menggunakan kontainer terpisah untuk aplikasi, worker, PostgreSQL, dan Redis. Ini adalah opsi yang direkomendasikan untuk server dan lingkungan produksi.
- Instalasi rumahan dengan Docker Run: Program ini menjalankan semuanya dalam satu kontainer menggunakan PGLite dan antrian yang tersimpan di memori. Program ini dirancang untuk proyek pribadi yang diinstal pada satu mesin.
- Platform terkelola: Jika Anda menggunakan Activepieces Cloud, penyedia layanan akan menangani penyebaran pembaruan dan Anda tidak perlu menjalankan perintah-perintah ini.
Jika Anda memiliki folder berisi file-file tersebut docker-compose.yml y .envAnda mungkin menggunakan penyebaran resmi. Namun, jika Anda menjalankan satu perintah dengan AP_DB_TYPE=PGLITE dan data Anda terletak di ~/.activepiecesAnda memiliki instalasi domestik.
Anda juga dapat memeriksa kontainer aktif menggunakan:
docker ps --format "table {{.Names}}\t{{.Image}}\t{{.Status}}"
Instalasi lengkap akan menampilkan layanan seperti app, worker, postgres y redisYang domestik biasanya hanya akan menampilkan satu kontainer yang disebut activepieces.
Cara memeriksa versi yang terpasang dan tersedia
Dalam penerapan resmi, versi biasanya diatur menggunakan variabel. AP_VERSION dari berkas .envAnda dapat mengaksesnya dari folder Activepieces dengan:
grep '^AP_VERSION=' .env
Anda juga dapat melihat gambar mana yang digunakan oleh layanan tersebut dengan perintah ini:
docker compose -p activepieces images
Sebelum mengubah versi, konsultasikan publikasi di repositori resmi dan berikan perhatian khusus pada bagian-bagian yang disebut Perubahan MendadakPeringatan ini menunjukkan apakah Anda perlu memodifikasi variabel, menjalankan migrasi khusus, atau memperbarui komponen apa pun sebelum memulai citra baru.
Tidak disarankan untuk secara otomatis menggunakan versi terbaru yang baru dirilis pada server penting. ActivePieces sering merilis pembaruan, jadi lebih bijaksana untuk berhati-hati. tetapkan versi tertentu, uji dan perbarui secara terkontrol.
Cara mencadangkan Activepieces

Dalam instalasi Docker Compose, alur dan koneksi terletak di PostgreSQL. Salin hanya folder tempat Anda menyimpan file Compose. Ini tidak membuat salinan basis data., karena biasanya berada di dalam volume Docker.
Dari direktori Activepieces, buat folder untuk cadangan:
mkdir -p backups
Kemudian ekspor basis data PostgreSQL:
docker compose -p activepieces exec -T postgres \
pg_dump -U postgres activepieces \
> "backups/activepieces-$(date +%F-%H%M).sql"
Perintah ini menggunakan nama pengguna dan nama basis data yang disertakan dalam penyebaran resmi. Jika Anda memodifikasinya di dalam file tersebut .envAnda perlu menggantinya dengan nilai Anda sendiri.
Selain PostgreSQL, Anda juga harus menyalin file variabel dan konfigurasi Compose:
cp .env "backups/env-$(date +%F-%H%M).backup"
cp docker-compose.yml "backups/docker-compose-$(date +%F-%H%M).yml"
chmod 600 backups/*
Salinan dari .env Hal ini penting karena mengandung AP_ENCRYPTION_KEYActivepieces menggunakan kunci ini untuk mengenkripsi koneksi yang tersimpan. Bahkan jika Anda berhasil memulihkan PostgreSQL, Kredensial tidak dapat didekripsi jika Anda kehilangan atau mengganti kunci ini..
Untuk mengurangi risiko terganggunya proses, lakukan pembaruan selama periode aktivitas rendah dan periksa terlebih dahulu bahwa tidak ada alur penting yang sedang berjalan.
Cara memperbarui Activepieces dengan Docker Compose
Jika Anda menginstal Activepieces menggunakan skrip resmi, cara yang disarankan untuk memperbaruinya adalah dengan menjalankan perintah berikut dari direktori instalasinya:
curl -fsSL https://get.activepieces.com | sh -s -- --upgrade
Prosedur ini menjaga agar file tetap tersimpan. .env, data dan modifikasi yang dilakukan pada docker-compose.ymlJika Anda lebih suka memeriksa skrip sebelum menjalankannya, Anda dapat menampilkan isinya tanpa mengirimkannya langsung ke penerjemah:
curl -fsSL https://get.activepieces.com
Jika Anda mengelola Docker Compose secara manual, pertama-tama ubah variabel dalam file tersebut. .env untuk versi yang ingin Anda instal:
AP_VERSION=X.Y.Z
Anda harus mengganti X.Y.Z dengan jumlah persis yang dipublikasikan di repositori. Kemudian unduh gambar baru dan buat ulang layanannya:
docker compose -p activepieces pull
docker compose -p activepieces up -d
Penting untuk mempertahankan nama proyek. activepiecesJika Anda menjalankan Compose dengan nama yang berbeda atau dari konfigurasi yang berbeda, Docker mungkin akan membuat volume baru dan tampaknya kosongmembuat seolah-olah arus kas Anda telah hilang.
Saat startup, Activepieces akan menerapkan migrasi basis data yang sesuai. Jangan hentikan kontainer selama proses ini kecuali log menunjukkan kesalahan yang jelas.
Cara memperbarui instalasi rumah Anda dengan PGLite
Versi rumahan menyimpan data Anda di dalam folder. ~/.activepiecesSebelum mengganti kontainer, hentikan terlebih dahulu dan buat salinan lengkapnya:
docker stop activepieces
cp -a ~/.activepieces \
"$HOME/.activepieces-backup-$(date +%F-%H%M)"
Kemudian hapus hanya kontainernya dan unduh gambar yang baru:
docker rm activepieces
docker pull activepieces/activepieces:latest
Terakhir, jalankan kembali perintah yang sama yang digunakan selama instalasi, dengan tetap mempertahankan volume, port, dan variabel asli:
docker run -d --name activepieces \
-p 8080:80 \
-v ~/.activepieces:/root/.activepieces \
-e AP_DB_TYPE=PGLITE \
-e AP_REDIS_TYPE=MEMORY \
-e AP_FRONTEND_URL="https://automatizaciones.ejemplo.com" \
activepieces/activepieces:latest
Ganti URL contoh dengan alamat sebenarnya dari instance Anda. Alur akan tetap berjalan karena tetap berada di folder yang terpasang dan tidak di dalam wadah yang dikeluarkan.
Model ini dirancang untuk satu mesin dan tidak memungkinkan penskalaan dengan banyak pekerja. Jika Anda perlu bermigrasi ke edisi perusahaan atau menerapkan beberapa instance, hanya mengubah beberapa variabel saja tidak cukup: Anda perlu merencanakan migrasi ke PostgreSQL dan Redis secara terpisah.
Cara memperbarui Activepieces dari Dockge, Portainer, atau Coolify
Saat ActivePieces dikelola dari dasbor visual, hindari memperbaruinya secara bersamaan dari terminal dan antarmuka. Pertama, buat salinan identik dari PostgreSQL dan file tersebut. .envKemudian ubah label gambar dan gunakan fungsi tersebut untuk membuat ulang, menyebarkan, atau memperbarui tumpukan tersedia di panel.
Jika Anda menggunakan Docker, Anda dapat mengikuti prosedur berikut: memperbarui kontainer Docker menggunakan Docker, dengan tetap mempertahankan volume dan variabel Activepieces.
Dalam semua kasus, periksa apakah panel tersebut belum mengganti versi yang telah ditetapkan oleh latest tanpa Anda sadari. Pada server produksi, lebih baik menggunakan label versi spesifik untuk mengontrol kapan perubahan tersebut diterapkan.
Cara memeriksa apakah pembaruan berhasil
Setelah kontainer dijalankan, periksa statusnya:
docker compose -p activepieces ps
Layanan utama seharusnya tampak aktif. Kemudian periksa titik akhir kesehatan:
curl http://localhost:8080/api/v1/health
Akses panel dan masuk Administrator Platform, Infrastruktur, dan PekerjaSetidaknya satu pekerja harus tampak terhubung. Disarankan juga untuk menjalankan alur pengujian secara manual dan meninjau otomatisasi apa pun yang menggunakan kredensial OAuth atau API eksternal.
Jika Anda perlu menyelidiki kegagalan, periksa log aplikasi dan log pekerja secara terpisah:
docker compose -p activepieces logs --tail=200 app
docker compose -p activepieces logs --tail=200 worker
Jangan berasumsi pembaruan sudah selesai hanya karena panel sudah dimuat. Periksa kembali hal tersebut. Alur kerja berjalan, koneksi dapat didekripsi, dan webhook tetap dapat diakses..
Cara mengembalikan ke versi sebelumnya
Jika versi baru menyebabkan kegagalan, sekadar mengubah label gambar mungkin tidak cukup. Beberapa pembaruan memodifikasi skema PostgreSQL, jadi Activepieces menyertakan perintah khusus untuk ini. membatalkan migrasi basis data.
Pertama, hentikan layanan tersebut:
docker compose -p activepieces down
Kemudian lakukan rollback menggunakan image baru, karena image tersebut berisi logika yang dibutuhkan untuk membatalkan migrasi:
docker run --rm --env-file .env --entrypoint npm \
activepieces/activepieces:VERSION_NUEVA \
run rollback -- --to VERSION_ANTERIOR
Ganti kedua nilai tersebut dengan versi yang sesuai. Kemudian ubah AP_VERSION dalam berkas .env Kembalikan ke versi sebelumnya dan mulai ulang layanan:
docker compose -p activepieces up -d
Sebelum melakukannya, tinjau catatan rilis. Beberapa migrasi yang bersifat merusak mungkin memerlukan konfirmasi tambahan dan Mereka tidak boleh dipaksa tanpa salinan yang sah.Jika Anda ragu, lebih aman untuk memulihkan cadangan PostgreSQL dan sekaligus memulihkan file tersebut. .env sesuai.
Kesalahan umum saat memperbarui Activepieces
Jika alur kerja telah hilang, periksa apakah Anda masih menggunakan volume PostgreSQL yang sama dan nama proyek Compose yang sama. Jalankan stack dari folder yang berbeda atau tanpa -p activepieces dapat menyebabkan terciptanya volume basis data yang berbeda.
Jika koneksi muncul tetapi kemudian berhenti berfungsi, periksa AP_ENCRYPTION_KEYMemulihkan basis data dengan kunci yang berbeda mencegah dekripsi kredensial yang tersimpan dan memaksa aplikasi untuk terhubung kembali.
Jika bagian pekerja kosong dan muncul kesalahan Socket.IO, kemungkinan pekerja tersebut tidak dapat berkomunikasi dengan layanan utama. Dalam konfigurasinya, AP_FRONTEND_URL Seharusnya mengarah ke nama internal layanan tersebut:
worker:
environment:
- AP_CONTAINER_TYPE=WORKER
- AP_FRONTEND_URL=http://app
URL publik harus dipertahankan dalam konfigurasi aplikasi utama. Di dalam kontainer pekerja, localhost Ini merujuk pada pekerja itu sendiri dan bukan pada server Activepieces.
Jika Docker menolak perintah tersebut, periksa apakah Anda menggunakan Docker Compose v2:
docker compose version
Perintah lama docker-compose Ini tidak kompatibel dengan implementasi resmi saat ini.
Jika kontainer utama terus memulai ulang, periksa log-nya. Salah satu kemungkinan penyebabnya di edisi Enterprise adalah pemeliharaan. AP_EXECUTION_MODE=UNSANDBOXED, nilai yang saat ini ditolak. Dalam skenario ini, mode yang kompatibel harus digunakan, seperti SANDBOX_CODE_ONLY.
Terakhir, jika panel dimuat, tetapi operasi tertentu mulai gagal setelah pembaruan, periksa perubahan yang tidak kompatibel pada versi yang terinstal. Komponen, variabel, atau perilaku webhook mungkin telah berubah meskipun penyebaran secara keseluruhan tampak benar.
Memperbarui Activepieces dengan aman memerlukan identifikasi jenis instalasi, pencadangan PostgreSQL atau PGLite, dan penyimpanan kunci file. .envDengan versi tetap, salinan terverifikasi, dan validasi selanjutnya terhadap pekerja dan alur kerja, Anda dapat memasukkan fitur baru tanpa membahayakan apa pun. otomatisasi yang sudah Anda miliki di lingkungan produksi.
Saya seorang penggila teknologi yang telah mengubah minat "geek"-nya menjadi sebuah profesi. Saya telah menghabiskan lebih dari 10 tahun hidup saya menggunakan teknologi mutakhir dan mengutak-atik semua jenis program hanya karena rasa ingin tahu. Sekarang saya memiliki spesialisasi dalam teknologi komputer dan video game. Hal ini karena selama lebih dari 5 tahun saya telah menulis untuk berbagai website tentang teknologi dan video game, membuat artikel yang berupaya memberikan informasi yang Anda butuhkan dalam bahasa yang dapat dimengerti oleh semua orang.
Jika Anda memiliki pertanyaan, pengetahuan saya berkisar dari segala sesuatu yang berhubungan dengan sistem operasi Windows serta Android untuk ponsel. Dan komitmen saya adalah kepada Anda, saya selalu bersedia meluangkan beberapa menit dan membantu Anda menyelesaikan pertanyaan apa pun yang mungkin Anda miliki di dunia internet ini.
