Antimatter ইনস্টল করা
প্রস্তুত compose ফাইল, রিলিজের .deb বা .rpm প্যাকেজ, অথবা রিলিজ আর্কাইভ থেকে Antimatter ইনস্টল করুন। এরপর প্রথম অ্যাডমিনিস্ট্রেটর অ্যাকাউন্ট তৈরি করুন।
Docker Compose দিয়ে ইনস্টল করা
এটিই সুপারিশকৃত পদ্ধতি। একটি compose ফাইল Antimatter, PostgreSQL, ফাইল স্টোরেজ এবং GIF সার্ভিস চালায়। আপনার একটি Linux সার্ভার, Docker Engine এবং এর Compose প্লাগইন (docker compose), ২টি CPU কোর এবং ৪ GB মেমরি বা তার বেশি প্রয়োজন।
১. compose ফাইল ডাউনলোড করুন
mkdir antimatter && cd antimatter
curl -fsSLO https://antimatter.chat/compose.yaml
২. .env ফাইল তৈরি করুন
compose ফাইল একই ডিরেক্টরিতে থাকা .env ফাইল থেকে সেটিংস পড়ে। এটি র্যান্ডম সিক্রেটস সহ তৈরি করুন:
cat > .env <<EOF
SITE_URL=http://localhost:8065
POSTGRES_PASSWORD=$(openssl rand -hex 24)
S3_SECRET_KEY=$(openssl rand -hex 24)
GIFS_API_KEY=$(openssl rand -hex 24)
AM_AI_ENCRYPTION_KEY=$(openssl rand -base64 32)
EOF
chmod 600 .env
ব্রাউজারে ব্যবহারকারীরা যে ঠিকানা টাইপ করবেন, সেটি SITE_URL এ নির্ধারণ করুন, যেমন লোকাল নেটওয়ার্কে http://192.168.1.20:8065 অথবা ডোমেইনসহ https://chat.example.com। .env ফাইলটি সংরক্ষণ করুন: ডেটাবেস এবং স্টোরেজ প্রথমবার চালু করার সময় এই ফাইল থেকে পাসওয়ার্ড ব্যবহার করে, AI মডেল সংযোগের API কীসমূহ AM_AI_ENCRYPTION_KEY দিয়ে এনক্রিপ্ট করা হয়, এবং ব্যাকআপ পুনরুদ্ধার করতেও একই ফাইলটি প্রয়োজন।
৩. চালু করুন
docker compose up -d
docker compose ps
প্রথমবার চালু হতে এক বা দুই মিনিট লাগতে পারে: PostgreSQL ডাটাবেস তৈরি করে, একটি one-shot bucket সার্ভিস স্টোরেজ বাক্স তৈরি করে, একটি one-shot gifs-stickers সার্ভিস স্টার্টার স্টিকার প্যাক ইমপোর্ট করে, এবং Antimatter তার টেবিলগুলো তৈরি করে। এটি ট্র্যাক করতে docker compose logs -f antimatter ব্যবহার করুন।
শুরু থেকেই ডোমেইন নাম এবং HTTPS ব্যবহার করতে, দেখুন ডোমেইন এবং HTTPS: compose ফাইলের ক্ষেত্রে এটি .env-এ আরও দুই লাইন এবং https প্রোফাইল।
.env ভেরিয়েবলসমূহ
| ভেরিয়েবল | ডিফল্ট | এটি কী করে |
|---|---|---|
SITE_URL | প্রয়োজনীয় | Antimatter-এর পাবলিক ঠিকানা (ServiceSettings.SiteURL)। |
POSTGRES_PASSWORD | প্রয়োজনীয় | antimatter ডাটাবেস ইউজারের পাসওয়ার্ড। |
S3_SECRET_KEY | প্রয়োজনীয় | ফাইল স্টোরেজের সিক্রেট কী। |
GIFS_API_KEY | প্রয়োজনীয় | Antimatter-এর GIF সার্ভিস কল করতে ব্যবহৃত কী। |
AM_AI_ENCRYPTION_KEY | খালি | যে কীটি AI মডেল সংযোগের API কীসমূহ এনক্রিপ্ট করে (openssl rand -base64 32)। খালি থাকলে: সার্ভার data ভলিউমে একটি কী ফাইল তৈরি করে। বিস্তারিত জানতে দেখুন এনক্রিপশন কী। |
GIFS_UPLOAD_KEY | খালি | ব্যবহারকারীদের পিকার থেকে নিজস্ব GIF এবং স্টিকার যোগ করতে এবং মুছে ফেলতে দেয়। খালি রাখলে আপলোড বন্ধ হয়ে যায়। |
DOMAIN | খালি | আপনার ডোমেইন নাম, https প্রোফাইলের জন্য। |
HTTP_PORT | 8065 | Antimatter-এর ওয়েব সার্ভারের হোস্ট পোর্ট। |
CALLS_PORT | 8443 | কল অডিও এবং ভিডিওর UDP এবং TCP পোর্ট। |
EDGE_SUBNET | 172.29.71.0/28 | Caddy এবং Antimatter-এর মধ্যে নেটওয়ার্কের সাবনেট। যদি এটি আপনার অন্য কোনো নেটওয়ার্কের সাথে মিলে যায়, তবে পরিবর্তন করুন। |
TZ | UTC | কন্টেইনারগুলোর টাইম জোন। |
ANTIMATTER_IMAGE | ghcr.io/antimatterchat/antimatter-next:latest | চালানোর জন্য Antimatter ইমেজ (নিচে দেখুন)। |
যা চলে
| সার্ভিস | ইমেজ | ভূমিকা |
|---|---|---|
antimatter | ghcr.io/antimatterchat/antimatter-next | সার্ভার, ওয়েব অ্যাপ এবং বান্ডেল করা অ্যাপসমূহ। এটি HTTP_PORT এবং CALLS_PORT প্রকাশ করে। এর ডেটা ডিরেক্টরি হলো data ভলিউম। |
postgres | postgres:17-alpine | ডাটাবেস, postgres ভলিউমে। |
files | rustfs/rustfs | আপলোড করা ফাইল এবং ইনস্টল করা অ্যাপসের জন্য S3-সম্মত স্টোরেজ, files ভলিউমে। |
bucket | amazon/aws-cli | antimatter বাক্সটি তৈরি করে, তারপর বেরিয়ে যায়। |
gifs | ghcr.io/antimatterchat/gifs-server | GIF এবং স্টিকার সার্ভিস, gifs ভলিউমে। |
gifs-stickers | ghcr.io/antimatterchat/gifs-server | প্রথমবার স্টার্টার স্টিকার প্যাক ইমপোর্ট করে, তারপর বেরিয়ে যায়। |
https | caddy:2-alpine | শুধুমাত্র https প্রোফাইলের ক্ষেত্রে: পোর্ট 80 এবং 443-এ HTTPS। |
PostgreSQL, স্টোরেজ এবং GIF সার্ভিস একটি অভ্যন্তরীণ নেটওয়ার্ক (private)-এ আছে, যার কোনো ইন্টারনেট অ্যাক্সেস নেই, এবং শুধুমাত্র Antimatter এই নেটওয়ার্কে যোগদান করে। তাদের কেউই কোনো পোর্ট পাবলিশ করে না।
Antimatter কনটেইনার ডিস্কে কিছু সংরক্ষণ করে না: এর সেটিংস ডেটাবেসে থাকে (AM_CONFIG সেটি নির্দেশ করে) এবং এর ফাইল ও অ্যাপসমূহ স্টোরেজ সার্ভিসে থাকে। আপনি যেকোনো সময় কনটেইনারটি সরিয়ে আবার তৈরি করতে পারেন। এর data ভলিউমে শুধুমাত্র AI এনক্রিপশন কী ফাইলটি থাকে, যা সার্ভার তৈরি করে যখন AM_AI_ENCRYPTION_KEY খালি থাকে। ব্যাকআপ নেওয়ার জন্য সবকিছু postgres, files, gifs এবং data ভলিউমে আছে, পাশাপাশি আপনার .env ফাইলটিও।
একটি ইমেজ নির্বাচন করুন
দুটি Antimatter ইমেজ প্রকাশিত হয়েছে, উভয়ই linux/amd64 এবং linux/arm64-এর জন্য, এবং উভয়ই প্রতিটি রিপোজিটরির main ব্রাঞ্চ থেকে তৈরি:
| ইমেজ | সংযুক্ত অ্যাপস | ট্যাগসমূহ |
|---|---|---|
ghcr.io/antimatterchat/antimatter | AI চ্যাট, কল, GitHub, GitLab, Jira এবং Metrics। | latest, রিলিজের জন্য X.Y.Z, sha-<commit> |
ghcr.io/antimatterchat/antimatter-next | উপরের সবকিছুর সাথে ভয়েস চ্যানেল, পোল, মেইল, ক্যালেন্ডার, নোট, হোয়াইটবোর্ড, GIF, করণীয় এবং মেম। প্রতি রাতে পুনরায় তৈরি হয়। | latest, nightly, nightly-<YYYYMMDD>, sha-<commit> |
ইমেজ বান্ডলে আর Kanban বা Playbooks থাকে না: যদি এগুলো ব্যবহার করতে চান, তবে নিজস্ব GitHub রিলিজ থেকে ইনস্টল করুন (নিচে দেখুন)। যে সার্ভারে আগে থেকেই কোনোটি ইনস্টল করা আছে, আপগ্রেড করার পরেও তা থাকবে।
সাইটের compose ফাইল antimatter-next ব্যবহার করে, কারণ GIF সার্ভিস এবং এই সাইটে বর্ণিত বেশিরভাগ অ্যাপ শুধুমাত্র সেই ইমেজে আছে। ইমেজ পরিবর্তন করতে, .env-এ ANTIMATTER_IMAGE সেট করুন এবং docker compose up -d চালান।
latest আপনার নিচে পরিবর্তিত হয়। প্রোডাকশনে, আপগ্রেডের সময় উদ্দেশ্যমূলকভাবে পরিবর্তন করার জন্য nightly-20261015 বা sha-<commit> এর মতো একটি ট্যাগ পিন করুন। সার্ভার শুরু হওয়ার সময় তার ডাটাবেস আপগ্রেড করে, তাই পূর্বে নেওয়া ব্যাকআপ রিস্টোর না করে আপনি পুরনো ইমেজে ফিরে যেতে পারবেন না, বা antimatter-next থেকে antimatter-এ ফিরে যেতে পারবেন না। দেখুন ব্যাকআপ এবং আপগ্রেড।ইমেজের ভিতরে
- সার্ভারটি
/antimatter-এ থাকে, আরantimatterএবংamctlবাইনারিগুলো/antimatter/bin-এ (যাPATH-এ আছে)। - এটি একটি ন্যূনতম distroless বেসে, কোনো শেল ছাড়াই, অপ্রাইভিলেজড ইউজার
antimatter(uid 2000) হিসেবে চলে। - পোর্ট: 8065 (ওয়েব এবং API), 8067 (মেট্রিক্স), 8074 (ক্লাস্টার), 8443 UDP এবং TCP (কল)।
- লোকাল মোড (
ServiceSettings.EnableLocalMode) চালু আছে, তাই কন্টেইনারের ভেতরেamctl --localকাজ করে। হেলথ চেক চালায়amctl system status --local। - বান্ডল করা অ্যাপগুলো
/antimatter/prepackaged_plugins-এ আছে, যা Antimatter অ্যাপ সাইনিং কী দিয়ে সাইন করা। - টেক্সট এক্সট্রাকশন টুল (
pdftotext,wvText,unrtf,tidy) অন্তর্ভুক্ত আছে, তাই আপলোড করা ডকুমেন্টের কনটেন্ট সার্চ করা যায়।
অন্যান্য কম্পোজ ফাইল
antimatter-docker রিপোজিটরিতে deploy/compose/-এ একটি প্রোডাকশন সেটআপ আছে: আপনার নিজের সার্টিফিকেট বা Let's Encrypt (certbot) সহ nginx, PostgreSQL, অপশনাল GIF সার্ভিস (প্রোফাইল gifs) এবং সার্ভারের কনফিগারেশন, ডেটা ও লগের জন্য নামকৃত ভলিউম, যা তার README-তে ডকুমেন্ট করা আছে। এটি ডিফল্টভাবে স্টেবল ইমেজ ব্যবহার করে এবং S3 স্টোরেজের বদলে লোকাল ভলিউমে ফাইল সংরক্ষণ করে। আপনি যদি Caddy-র চেয়ে nginx পছন্দ করেন, অথবা আগে থেকেই সার্টিফিকেট থাকে, তবে এটি ব্যবহার করুন।
প্রথম অ্যাডমিন তৈরি করুন
ব্রাউজারে SITE_URL খুলে একটি অ্যাকাউন্ট তৈরি করুন। একটি নতুন সার্ভারে তৈরি করা প্রথম অ্যাকাউন্টটি সিস্টেম অ্যাডমিন হয়ে যায়, এবং সেটআপটি আপনাকে আপনার প্রথম কমিউনিটি (Antimatter-এর টিম বা ওয়ার্কস্পেসের নাম) তৈরির வழি দেখায়।
প্রথমবার স্টার্ট করার পরেই এটি করুন: এর আগে যে কেউ সার্ভারে আগে পৌঁছালে সে তার অ্যাডমিন হয়ে যাবে। সার্ভারটি বাইরে থেকে অ্যাক্সেসযোগ্য না হওয়া পর্যন্ত কমান্ড লাইন থেকে অ্যাকাউন্ট তৈরি করতে:
docker compose exec antimatter amctl --local user create --system-admin --email-verified \
--email admin@example.com --username admin --password 'a-long-password'
docker compose exec antimatter amctl --local team create --name main --display-name "Main"
docker compose exec antimatter amctl --local team users add main admin
তারপর SITE_URL-এ সাইন ইন করুন। পাসওয়ার্ডটি আপনার শেল হিস্ট্রি থেকে বাদ রাখতে কমান্ডের শুরুতে একটি স্পেস দিন (HISTCONTROL=ignorespace সহ), অথবা সাইন ইন করার পরে পাসওয়ার্ডটি পরিবর্তন করুন।
আপনি ভিতরে ঢোকার পরের পরবর্তী ধাপসমূহ:
- কোনো কোম্পানি বা সংস্থার জন্য নতুন কমিউনিটির ধরন সেটিংসে ওয়ার্কস্পেস নির্বাচন করুন, এবং আগে থেকে তৈরি করা কমিউনিটির ধরন পরিবর্তন করতে তার সেটিংসে যান: Guild বা workspace।
- নির্ধারণ করুন কে কে অ্যাকাউন্ট তৈরি করতে পারবে: সাইন-ইন এবং অ্যাকাউন্ট।
- ইমেইল কনফিগার করুন, যাতে আমন্ত্রণ এবং পাসওয়ার্ড রিসেট কাজ করে: ইমেইল এবং পুশ নোটিফিকেশন।
- আপনার ফায়ারওয়ালে কলের পোর্ট খুলুন: কল এবং ভয়েস।
- যে অ্যাপগুলো চালু আছে তা দেখুন: বান্ডল করা অ্যাপ।
রিলিজ ডাউনলোড করুন
Docker ছাড়া GitHub-এর রিলিজ ফাইল থেকে Antimatter ইনস্টল করুন: github.com/AntimatterChat/antimatter/releases। প্রতিটি রিলিজের একটি ভার্সন নম্বর থাকে, যেমন 0.9.0, এবং এর ট্যাগ সেই নম্বরের সামনে v যুক্ত করে হয় (v0.9.0)।
0.9.0-rc.1, GitHub-এ Pre-release হিসেবে চিহ্নিত থাকে। এটি একটি পরীক্ষামূলক ভার্সন, যা চূড়ান্ত রিলিজের আগে প্রকাশিত হয়।প্রতিটি রিলিজের amd64 এবং arm64 সার্ভারের জন্য এই ফাইলগুলো থাকে:
| ফাইল | এটি কী |
|---|---|
antimatter_<version>-1_amd64.deb, antimatter_<version>-1_arm64.deb | Debian, Ubuntu এবং তাদের ভিত্তিতে তৈরি ডিস্ট্রিবিউশনগুলোর জন্য প্যাকেজ। |
antimatter-<version>-1.x86_64.rpm, antimatter-<version>-1.aarch64.rpm | Fedora, RHEL এবং RHEL-এর সাথে সামঞ্জস্যপূর্ণ ডিস্ট্রিবিউশনগুলোর জন্য প্যাকেজ। |
antimatter-<version>-linux-amd64.tar.gz, antimatter-<version>-linux-arm64.tar.gz | যেকোনো Linux ডিস্ট্রিবিউশনের জন্য রিলিজ আর্কাইভ, যা হাতে সেটআপ করতে হয়। |
SHA256SUMS | রিলিজের প্রতিটি ফাইলের SHA-256 চেকসাম। |
প্যাকেজ এবং আর্কাইভে একই প্রোগ্রাম থাকে: সার্ভার (antimatter), কমান্ড-লাইন টুল (amctl), দুটি ওয়েব অ্যাপ (ডিফল্ট ইন্টারফেস এবং ক্লাসিক), বান্ডল করা অ্যাপস, ইমেইল টেমপ্লেট এবং অনুবাদ। প্যাকেজগুলোতে একটি systemd সার্ভিস এবং একটি সেটিংস ফাইল থাকে, তাই প্রতিটিই একটি all-in-one ইনস্টলেশন: আপনি শুধু একটি PostgreSQL ডাটাবেস যোগ করবেন। আলাদা বাইনারি ডাউনলোড নেই: বাইনারিগুলো আর্কাইভের antimatter/bin/ ফোল্ডারে থাকে। এগুলো স্ট্যাটিক, তাই তাদের আর্কিটেকচারের যেকোনো Linux ডিস্ট্রিবিউশনে চলে।
প্যাকেজের নামে, প্রি-রিলিজ ভার্সনের হাইফেনটি টিল্ডে পরিণত হয়, যাতে প্যাকেজ ম্যানেজার প্রি-রিলিজকে ফাইনাল রিলিজের আগে সর্ট করতে পারে: ভার্সন 0.9.0-rc.1 থেকে antimatter_0.9.0~rc.1-1_amd64.deb এবং antimatter-0.9.0~rc.1-1.x86_64.rpm তৈরি হয়। আর্কাইভে হাইফেনটি অপরিবর্তিত থাকে।
antimatter version রিলিজ ভার্সনটি বিল্ড নম্বর হিসেবে প্রিন্ট করে, এবং যে কমিট থেকে এটি তৈরি হয়েছে তা বিল্ড হ্যাশ হিসেবে দেখায়। এর ভার্সন লাইনটি হলো Antimatter-এর ভিত্তি হিসেবে ব্যবহৃত Mattermost লাইনের ভার্সন।
ডাউনলোড যাচাই করুন
আপনার প্রয়োজনীয় ফাইল এবং SHA256SUMS রিলিজ পেজ থেকে বা curl ব্যবহার করে একই ডিরেক্টরিতে ডাউনলোড করুন, তারপর ফাইলটি যাচাই করুন:
curl -fLO https://github.com/AntimatterChat/antimatter/releases/download/v<version>/antimatter_<version>-1_amd64.deb
curl -fLO https://github.com/AntimatterChat/antimatter/releases/download/v<version>/SHA256SUMS
sha256sum --check --ignore-missing SHA256SUMS
আপনি যে ফাইলগুলো ডাউনলোড করেছেন, প্রতিটির পাশে OK লেখা থাকতে হবে। অন্য যেকোনো ফলাফল বোঝায় ফাইলটি নষ্ট বা অসম্পূর্ণ: আবার ডাউনলোড করুন এবং সেটি ইনস্টল করবেন না। SHA256SUMS সাইন করা নয়: এটি কেবল নষ্ট ডাউনলোড শনাক্ত করে, GitHub-এর HTTPS ডাউনলোডের চেয়ে বেশি কিছু প্রমাণ করে না।
.deb বা .rpm প্যাকেজ ইনস্টল করুন
প্যাকেজটি Antimatter-কে একটি systemd সার্ভিস হিসেবে ইনস্টল করে, যা শুরু হতে কেবল একটি ডাটাবেসের প্রয়োজন হয়। এটি ব্যবহার করুন 64-বিট Debian, Ubuntu, Fedora বা RHEL-সম্মত সার্ভারে যেখানে systemd আছে।
প্যাকেজটি কী কী ইনস্টল করে
| পথ | কী রয়েছে |
|---|---|
/opt/antimatter | প্রোগ্রাম: bin/antimatter, bin/amctl, ওয়েব অ্যাপস (client/, client-fusion/), বান্ডল করা অ্যাপস (prepackaged_plugins/), টেমপ্লেট, অনুবাদ এবং ফন্ট। প্রতিটি আপগ্রেডে এটি প্রতিস্থাপিত হয়। |
/etc/antimatter/antimatter.env | সার্ভিসের সেটিংস, AM_ ভেরিয়েবল হিসেবে: ডাটাবেস, সাইট URL, GIF সার্ভিস। শুধুমাত্র root-এর পক্ষে পড়ার উপযোগী। আপগ্রেডে এটি সংরক্ষিত থাকে। |
/etc/antimatter/config/config.json | কনফিগারেশন ফাইল, যেখানে সার্ভার সিস্টেম কনসোল থেকে পরিবর্তিত সেটিংস সংরক্ষণ করে। প্রথম ইনস্টলেশনে এটি /opt/antimatter/defaults/config.json থেকে তৈরি হয় এবং তারপর থেকে কখনোই প্রতিস্থাপিত হয় না। |
/var/lib/antimatter | আপলোড করা ফাইল (data/) এবং ইনস্টল করা অ্যাপস (plugins/, client-plugins/)। |
/var/log/antimatter | লগ ফাইল, যদি আপনি ফাইল লগিং চালু করেন। এটি বন্ধ আছে: লগগুলো জার্নালে যায়। |
/usr/lib/systemd/system/antimatter.service | সার্ভিস। |
/usr/bin/amctl | /opt/antimatter/bin/amctl এর লিংক। |
সার্ভার /opt/antimatter-এর (config, data, plugins, client/plugins এবং logs) ডিরেক্টরিতে লেখা ফাইলগুলো /etc/antimatter, /var/lib/antimatter এবং /var/log/antimatter-এর লিংক। তাই আপগ্রেড, যা /opt/antimatter প্রতিস্থাপন করে, আপনার ডেটা কখনোই ছোঁয় না। প্যাকেজটি antimatter নামের একটি সিস্টেম ইউজারও তৈরি করে, যা সার্ভার চালিয়ে এই ডিরেক্টরিগুলোর মালিক।
প্যাকেজটি ca-certificates-এর উপর নির্ভরশীল। এটি PostgreSQL-এর (Debian এবং Ubuntu-তে postgresql, Fedora এবং RHEL-এ postgresql-server) সুপারিশ করে, media-types (mailcap for the .rpm) এবং gifs-server, GIF সার্ভিস, যার নিজস্ব রিলিজ রয়েছে (নিচে দেখুন নিচে)। apt এবং dnf সুপারিশকৃত প্যাকেজগুলো খুঁজে পেলে সেগুলো ইনস্টল করে। এটি poppler-utils, wv, unrtf এবং tidy (no wv for the .rpm) প্রস্তাব করে: এগুলো আপলোড করা ডকুমেন্টের টেক্সট বের করে, যাতে সার্চ তাদের ভেতরের শব্দগুলো খুঁজে পেতে পারে। আপনি যদি এই সুবিধা চান, তবে নিজেই সেগুলো ইনস্টল করুন।
১. প্যাকেজ ইনস্টল করুন
আপনার আর্কিটেকচারের Antimatter প্যাকেজ এবং GIF সার্ভিস প্যাকেজ ডাউনলোড করুন, উপরে দেখানো মতো চেক করুন, এবং একটি কমান্ডে উভয়টি ইনস্টল করুন, যাতে gifs-server-এর রেকমেন্ডেশন পূরণ হয় (এটি ডিস্ট্রিবিউশনের রিপোজিটরিতে নেই):
# Debian, Ubuntu
sudo apt install ./antimatter_<version>-1_amd64.deb ./gifs-server_*_amd64.deb
# Fedora, RHEL
sudo dnf install ./antimatter-<version>-1.x86_64.rpm ./gifs-server-*.x86_64.rpm
./ রাখুন: এটি apt এবং dnf-কে বলে যে একটি লোকাল ফাইল ইনস্টল করতে হবে। GIF সার্ভিস ছাড়া ইনস্টল করতে চাইলে তার প্যাকেজটি বাদ দিন। প্যাকেজটি antimatter সার্ভিস সক্রিয় করে কিন্তু শুরু করে না, এবং পরবর্তী ধাপগুলো প্রিন্ট করে।
২. ডেটাবেস তৈরি করুন
Antimatter-এর জন্য PostgreSQL 15 বা তার নতুন ভার্সন দরকার, এই সার্ভারে বা অন্য কোনো সার্ভারে। psql --version দিয়ে আপনার ডিস্ট্রিবিউশনের PostgreSQL-এর ভার্সন চেক করুন। যদি এটি পুরনো হয়, তবে PostgreSQL প্রজেক্টের নিজস্ব রিপোজিটরি থেকে নতুন ভার্সন ইনস্টল করুন, বা অন্য সার্ভারে ডেটাবেস ব্যবহার করুন। Debian এবং Ubuntu-তে postgresql প্যাকেজ ডেটাবেস শুরু করে। Fedora এবং RHEL-এ প্রথমে তৈরি করে শুরু করুন:
sudo postgresql-setup --initdb
sudo systemctl enable --now postgresql
তারপর Antimatter-এর জন্য একটি ইউজার এবং একটি ডেটাবেস তৈরি করুন:
sudo -u postgres psql -c "CREATE USER antimatter WITH PASSWORD 'a-long-password'"
sudo -u postgres psql -c "CREATE DATABASE antimatter OWNER antimatter"
PostgreSQL-কে 127.0.0.1-এর থেকে পাসওয়ার্ড কানেকশন গ্রহণ করতে হবে: এর pg_hba.conf ফাইলের host লাইনগুলো, scram-sha-256 মেথড সহ।
৩. ডেটাবেস এবং সাইট URL সেট করুন
/etc/antimatter/antimatter.env ফাইলটি সম্পাদনা করুন (sudoedit /etc/antimatter/antimatter.env)। যেসব লাইন ব্যবহার করবেন, তাদের সামনের # চিহ্নটি মুছে ফেলুন এবং ডাটাবেস ও যে ঠিকানায় ব্যবহারকারীরা অ্যাপটি খুলবেন তা নির্ধারণ করুন:
AM_SQLSETTINGS_DRIVERNAME=postgres
AM_SQLSETTINGS_DATASOURCE=postgres://antimatter:a-long-password@localhost:5432/antimatter?sslmode=disable&connect_timeout=10
AM_SERVICESETTINGS_SITEURL=https://chat.example.com
কনফিগারেশনের যেকোনো সেটিং এই ফাইলে AM_<SECTION>_<SETTING> আকারে রাখা যায়: যেমন, SqlSettings.DataSource হলো AM_SQLSETTINGS_DATASOURCE। এখানে সেট করা কোনো সেটিং সিস্টেম কনসোল-এ পরিবর্তন করা যায় না। প্রতিটি পরিবর্তনের পর সার্ভারটি রিস্টার্ট করুন: sudo systemctl restart antimatter।
সার্ভিসটি কয়েকটি ডিফল্ট মানও সেট করে, যা antimatter.env-এর একটি লাইন দ্বারা পরিবর্তিত হতে পারে: ফাইলে লগিং বন্ধ থাকে (AM_LOGSETTINGS_ENABLEFILE=false, AM_NOTIFICATIONLOGSETTINGS_ENABLEFILE=false), এবং লোকাল মোড চালু থাকে (AM_SERVICESETTINGS_ENABLELOCALMODE=true), যাতে সার্ভারে amctl --local কাজ করে।
৪. চালু করুন
sudo systemctl start antimatter
journalctl -u antimatter -f
sudo -u antimatter amctl --local system status
প্রথমবার চালু করার সময় সার্ভারটি তার টেবিলগুলো তৈরি করে, তারপর পোর্ট 8065-এ শুনতে থাকে। http://<server>:8065 খুলুন, অথবা রিভার্স প্রক্সি সেটআপের পর আপনার ডোমেইনটি (দেখুন ডোমেইন এবং HTTPS)। এরপরই প্রথম অ্যাকাউন্টটি তৈরি করুন: এটিই সিস্টেম অ্যাডমিনিস্ট্রেটর হবে। যদি কমান্ড লাইন থেকে তৈরি করতে চান, তবে প্রথম অ্যাডমিনিস্ট্রেটর তৈরি করুন অনুচ্ছেদের amctl কমান্ডগুলো ব্যবহার করুন, যেখানে docker compose exec antimatter amctl --local-এর বদলে sudo -u antimatter amctl --local ব্যবহার করুন।
৫. GIF চালু করুন
GIF অ্যাপটি বান্ডল করা এবং চালু আছে, এবং antimatter.env ইতিমধ্যে একই সার্ভারে থাকা GIF সার্ভিসের দিকে ইঙ্গিত করছে (AM_GIFS_SERVICE_URL=http://127.0.0.1:8080/v2)। তবে এটির জন্য সার্ভিসের API কী প্রয়োজন। gifs-server প্যাকেজটি ইনস্টলেশনের সময় একটি কী তৈরি করেছিল:
sudo systemctl start gifs-server-stickers # imports the sticker pack, about a minute and a half
sudo systemctl start gifs-server
sudo grep -v '^#' /etc/gifs-server/api-keys
কীটি antimatter.env-এ AM_GIFS_API_KEY=<key> আকারে বসান এবং Antimatter রিস্টার্ট করুন, অথবা সিস্টেম কনসোল › প্লাগইনসমূহ › GIF-এ API কী হিসেবে এটি প্রবেশ করান। যদি GIF সার্ভিসটি অন্য কোনো সার্ভারে চলে, তবে AM_GIFS_SERVICE_URL-এ তার ঠিকানা সেট করুন। ব্যবহারকারীদের নিজস্ব GIF এবং স্টিকার যোগ করার অনুমতি দিতে, দেখুন GIF।
সার্ভিস
- এটি
antimatterইউজার হিসেবে চলে,/opt/antimatter-এ অবস্থিত এবং/etc/antimatter/antimatter.envপড়ে। সার্ভারটি যখনই বন্ধ হয়, systemd তা পুনরায় চালু করে এবং নতুন ভার্সনের ডাটাবেস মাইগ্রেশন দীর্ঘ সময় নিতে পারে বলে স্টার্ট হতে তার এক ঘণ্টা পর্যন্ত সময় দেয়। - এর লগগুলো জার্নালে থাকে:
journalctl -u antimatter। - এটি হার্ডেন করা: সার্ভারের জন্য
/usrএবং/etcশুধুমাত্র পড়ার জন্য (read-only), তবে/etc/antimatter/configবাদে। এটি/home,/rootবা/run/userদেখতে পারে না। আপনি যদি ফাইল স্টোরেজ (FileSettings.Directory) সরান, তবে এই ডিরেক্টরির বাইরে এমন একটি ডিরেক্টরি বেছে নিন যাantimatterইউজারের মালিকানাধীন। - আপগ্রেডের সময় সার্ভিস ফাইলটি প্রতিস্থাপিত হয়। এটি পরিবর্তন করতে
sudo systemctl edit antimatterব্যবহার করুন, যা আপনার পরিবর্তনগুলো একটি আলাদা ফাইলে সংরক্ষণ করবে।
একটি প্যাকেজ আপগ্রেড করুন
- একটি ব্যাকআপ নিন (ব্যাকআপ এবং আপগ্রেড দেখুন)।
- নতুন প্যাকেজ এবং
SHA256SUMSডাউনলোড করুন এবং যাচাই করুন। - সার্ভারটি বন্ধ করুন, পুরনোটির ওপর নতুন প্যাকেজটি ইনস্টল করুন এবং আবার চালু করুন:
sudo systemctl stop antimatter sudo apt install ./antimatter_<new version>-1_amd64.deb # or: sudo dnf install ./antimatter-<new version>-1.x86_64.rpm sudo systemctl start antimatter journalctl -u antimatter -f
প্যাকেজটি নিজে থেকে সার্ভারটি রিস্টার্ট করে না। আপগ্রেডের পর এটি প্রিন্ট করে Antimatter was upgraded; restart it to run the new version: sudo systemctl restart antimatter: আপনি যদি আগে সার্ভারটি বন্ধ না করেন, তবে立ই রিস্টার্ট করুন। আপগ্রেডটি /opt/antimatter এবং সার্ভিস ফাইলটি প্রতিস্থাপন করে, কিন্তু antimatter.env, config.json, /var/lib/antimatter এবং লগগুলো সংরক্ষণ করে। স্টার্ট করার সময় সার্ভারটি ডাটাবেস আপগ্রেড করে এবং বান্ডল করা অ্যাপগুলোর নতুন ভার্সন ইনস্টল করে।
যদি নতুন ভার্সনটি ডিফল্ট antimatter.env পরিবর্তন করে, তবে apt আপনার ভার্সনটি রাখতে চাইলে জিজ্ঞাসা করবে: তা রাখুন। dnf আপনারটি রাখে এবং নতুনটিকে /etc/antimatter/antimatter.env.rpmnew হিসেবে সংরক্ষণ করে। আপগ্রেড শুধুমাত্র সামনের দিকে যায়: নতুন ভার্সনের ওপর পুরনো ভার্সন ইনস্টল করবেন না।
একটি প্যাকেজ মুছে ফেলুন
sudo apt remove antimatter বা sudo dnf remove antimatter সার্ভিসটি বন্ধ এবং নিষ্ক্রিয় করে, এবং প্রোগ্রামটি মুছে ফেলে। এটি ডেটা (/var/lib/antimatter), কনফিগারেশন (/etc/antimatter), ডাটাবেস এবং antimatter ইউজারটি সংরক্ষণ করে: Antimatter সম্পূর্ণভাবে মুছে ফেলতে এগুলো নিজে মুছে ফেলুন।
প্যাকেজ এবং আর্কাইভে থাকা অ্যাপসমূহ
প্যাকেজ এবং আর্কাইভে এই অ্যাপসমূহের সাম্প্রতিক স্বাক্ষরিত রিলিজ অন্তর্ভুক্ত থাকে, prepackaged_plugins/ ডিরেক্টরিতে: AI চ্যাট, কলস, GIFs, মেমস, নোটস, পোলস, টু-ডু, ভয়েস চ্যানেলস এবং হোয়াইটবোর্ড। সার্ভার রিলিজ তৈরি করার সময় যে অ্যাপের কোনো রিলিজ ছিল না, সেটি বাদ দেওয়া হয়: আপনার রিলিজে কী কী অন্তর্ভুক্ত তা দেখতে ls /opt/antimatter/prepackaged_plugins কমান্ডটি ব্যবহার করুন। মেমস এবং টু-ডু অন্তর্ভুক্ত থাকলেও চালু করা থাকে না: এগুলো ইনস্টল এবং সক্রিয় করার পদ্ধতি বান্ডেল করা অ্যাপসমূহ এ ব্যাখ্যা করা হয়েছে।
Kanban এবং Playbooks আর সার্ভার বা কোনো Docker ইমেজের সাথে বান্ডল করা থাকে না: যে সার্ভারে আগে থেকেই কোনোটি ইনস্টল করা আছে, আপগ্রেড করার পরেও তা থাকবে, এবং অন্যরা নিচের অ্যাপগুলোর মতো নিজস্ব রিলিজ থেকে ইনস্টল করবে। Docker ইমেজের অন্যান্য অ্যাপগুলোও প্যাকেজ বা আর্কাইভে থাকে না: Mail, Calendar, GitHub, GitLab, Jira এবং Metrics। Kanban এবং Playbooks সহ প্রতিটি অ্যাপ নিজস্ব রিলিজ থেকে ইনস্টল করুন:
| অ্যাপ | রিলিজসমূহ | অ্যাপ আইডি |
|---|---|---|
| কানবান | antimatter-plugin-boards | focalboard |
| প্ল্যাবুক | antimatter-plugin-playbooks | playbooks |
| মেইল | antimatter-plugin-mail | com.antimatterchat.mail |
| ক্যালেন্ডার | antimatter-plugin-calendar | com.antimatterchat.calendar |
| GitHub | antimatter-plugin-github | github |
| GitLab | antimatter-plugin-gitlab | com.github.manland.mattermost-plugin-gitlab |
| Jira | antimatter-plugin-jira | jira |
| মেট্রিকস | Antimatter-plugin-metrics | com.mattermost.mattermost-plugin-metrics |
প্রতিটি অ্যাপ রিলিজের মধ্যে অ্যাপের বান্ডেল (একটি .tar.gz ফাইল), এর স্বাক্ষর (একই নামে .sig যোগ করা) এবং একটি SHA256SUMS ফাইল থাকে। একটি অ্যাপ ইনস্টল করতে, আপলোড অনুমতি দিন, তারপর amctl দিয়ে বান্ডেলটি যোগ করুন:
# 1. In /etc/antimatter/antimatter.env, add this line, then restart Antimatter
AM_PLUGINSETTINGS_ENABLEUPLOADS=true
sudo systemctl restart antimatter
# 2. Download the bundle where the antimatter user can read it, and install it
cd /tmp
curl -fLO https://github.com/AntimatterChat/antimatter-plugin-boards/releases/download/v<version>/<bundle>.tar.gz
sudo -u antimatter amctl --local plugin add <bundle>.tar.gz
sudo -u antimatter amctl --local plugin enable focalboard
এই পদ্ধতিতে ইনস্টল করা অ্যাপ আপগ্রেড করতে, plugin add --force দিয়ে নতুন বান্ডেলটি যোগ করুন: প্যাকেজ আপগ্রেড শুধুমাত্র বান্ডেল করা অ্যাপগুলো আপগ্রেড করে। পরে AM_PLUGINSETTINGS_ENABLEUPLOADS লাইনটি আবার মুছে ফেলতে পারেন। অ্যাপ ইনস্টল করার অন্য পদ্ধতিগুলোর জন্য দেখুন Installing other apps।
অ্যাপ স্বাক্ষর
অ্যাপ বান্ডেলগুলো Antimatter অ্যাপ স্বাক্ষর কী দিয়ে স্বাক্ষরিত: প্রতিটি .tar.gz.sig ফাইল হলো তার বান্ডেলের একটি ডিটাচড GPG স্বাক্ষর। সার্ভার একটি বান্ডেল করা অ্যাপ ইনস্টল করার আগে এই স্বাক্ষরগুলো যাচাই করে। নিজে বান্ডেলটি যাচাই করতে:
curl -fsSLO https://raw.githubusercontent.com/AntimatterChat/antimatter-docker/main/keys/antimatter-plugin-signing.asc
gpg --import antimatter-plugin-signing.asc
gpg --verify <bundle>.tar.gz.sig <bundle>.tar.gz
gpg-এর রিপোর্টে Antimatter Plugin Signing থেকে একটি ভালো স্বাক্ষর (good signature) থাকতে হবে, ফিঙ্গারপ্রিন্ট 06C8 1032 4677 0F08 BBA7 78B9 E69B 05C3 92A6 9A45 সহ। এটি এমন একটি সতর্কবার্তাও দেয় যে কীটি একটি বিশ্বস্ত স্বাক্ষর দিয়ে সার্টিফাই করা হয়নি; আপনি নিজে স্বাক্ষর করেননি এমন একটি কী-এর জন্য এটি স্বাভাবিক। .sig ফাইল ছাড়া কোনো অ্যাপ রিলিজ অস্বাক্ষরিত (unsigned), এবং এর রিলিজ নোটে তা উল্লেখ থাকে।
রিলিজ আর্কাইভ থেকে ইনস্টল করুন
আর্কাইভটি, antimatter-<version>-linux-<arch>.tar.gz (যেমন antimatter-0.9.0-linux-amd64.tar.gz), এমন একটি ডিস্ট্রিবিউশনের জন্য উপযুক্ত যার .deb বা .rpm প্যাকেজ নেই, অথবা আপনার নিজের কোনো লেআউটের জন্য। এতে একটি একক antimatter/ ডিরেক্টরি থাকে, যার মধ্যে রয়েছে bin/antimatter, bin/amctl, config/config.json, ওয়েব অ্যাপস (client/ এবং client-fusion/), বান্ডল করা অ্যাপস (prepackaged_plugins/, উপরে দেখুন), ইমেইল টেমপ্লেট এবং ট্রান্সলেশনসমূহ।
1. PostgreSQL প্রস্তুত করুন
Antimatter শুধুমাত্র PostgreSQL সাপোর্ট করে, ভার্সন 15 বা তার পরের (পুরনো ভার্সনগুলো স্টার্ট হয়, তবে লগে এরর দেখা যায়)। একটি ইউজার এবং ডাটাবেস তৈরি করুন:
sudo -u postgres psql <<'EOF'
CREATE USER antimatter WITH PASSWORD 'a-long-password';
CREATE DATABASE antimatter OWNER antimatter;
EOF
2. আনপ্যাক এবং কনফিগার করুন
sudo tar -xzf antimatter-<version>-linux-amd64.tar.gz -C /opt
sudo useradd --system --user-group antimatter
sudo mkdir -p /opt/antimatter/data
sudo chown -R antimatter:antimatter /opt/antimatter
সার্ভারকে ডাটাবেসের সাথে সংযুক্ত করুন, /opt/antimatter/config/config.json (SqlSettings.DataSource)-এ অথবা এনভায়রনমেন্ট ভেরিয়েবল ব্যবহার করে, এবং সাইটের URL সেট করুন:
AM_SQLSETTINGS_DRIVERNAME=postgres
AM_SQLSETTINGS_DATASOURCE=postgres://antimatter:a-long-password@localhost:5432/antimatter?sslmode=disable&connect_timeout=10
AM_SERVICESETTINGS_SITEURL=https://chat.example.com
আর্কাইভের config.json একটি সম্পূর্ণ ডিফল্ট কনফিগারেশন: System Console-এ আপনি যে সেটিংস পরিবর্তন করেন, সেগুলো সেখানেই সেভ হয়। যদি আপনি কনফিগারেশনটি ডাটাবেসে রাখতে চান, তবে Configuration দেখুন।
3. এটি একটি সার্ভিস হিসেবে চালান
একটি systemd ইউনিট, /etc/systemd/system/antimatter.service-এ:
[Unit]
Description=Antimatter
After=network.target postgresql.service
[Service]
Type=notify
User=antimatter
Group=antimatter
WorkingDirectory=/opt/antimatter
ExecStart=/opt/antimatter/bin/antimatter
EnvironmentFile=-/etc/antimatter.env
TimeoutStartSec=3600
Restart=always
RestartSec=10
LimitNOFILE=49152
[Install]
WantedBy=multi-user.target
আপনার AM_ ভেরিয়েবলগুলো /etc/antimatter.env-এ রাখুন (শুধুমাত্র root-এর দ্বারা পঠনযোগ্য), তারপর:
sudo systemctl daemon-reload
sudo systemctl enable --now antimatter
journalctl -u antimatter -f
সার্ভারটি পোর্ট 8065-এ লিসেন করে। http://<server>:8065 খুলুন, অথবা রিভার্স প্রক্সি সেটআপ করার পর আপনার ডোমেইন (দেখুন Domain and HTTPS), এবং প্রথম অ্যাকাউন্ট তৈরি করুন: এটি সিস্টেম অ্যাডমিনিস্ট্রেটর হয়ে যাবে।
bin/amctl কমান্ড লাইন থেকে চলমান সার্ভারটি ম্যানেজ করে। সার্ভারের নিজের ওপর, এটি লোকাল মোডের মাধ্যমে সাইন ইন ছাড়াই কাজ করে: AM_SERVICESETTINGS_ENABLELOCALMODE=true সেট করুন, তারপর sudo -u antimatter /opt/antimatter/bin/amctl --local system status চালান।
GIF-এর জন্য, GIF সার্ভিসটি ইনস্টল করুন (নিচে দেখুন) এবং প্যাকেজের ধাপ 5-এর মতো AM_GIFS_SERVICE_URL এবং AM_GIFS_API_KEY সেট করুন।
GIF সার্ভিস এবং পুশ প্রক্সি প্যাকেজসমূহ
GIF সার্ভিস এবং পুশ প্রক্সির নিজস্ব রিলিজসমূহ রয়েছে, সার্ভারের মতোই একই নিয়মসহ: একটি .tar.gz আর্কাইভ, amd64 এবং arm64-এর জন্য একটি .deb এবং একটি .rpm প্যাকেজ, এবং একটি SHA256SUMS ফাইল। হাইফেনসহ ভার্সনগুলো প্রি-রিলিজ। সার্ভারের মতোই sha256sum --check --ignore-missing SHA256SUMS দিয়ে ডাউনলোডগুলো যাচাই করুন।
GIF সার্ভিস (gifs-server)
রিলিজসমূহ: github.com/AntimatterChat/gifs-server/releases। আর্কাইভটি হলো gifs-server-<version>-linux-<arch>.tar.gz; প্যাকেজগুলোর নাম gifs-server।
sudo apt install ./gifs-server_*_amd64.deb # Debian, Ubuntu
sudo dnf install ./gifs-server-*.x86_64.rpm # Fedora, RHEL
প্যাকেজটি ইনস্টল করে:
/usr/bin/gifs-server, এবংgifs-serverসার্ভিস, যাgifs-serverইউজার হিসেবে চলে এবং তার ক্যাটালগ/var/lib/gifs-server-এ রাখে;gifs-server-stickersসার্ভিস, যা শুরু করার সময়/usr/share/gifs-server/stickers-এ স্টিকার প্যাক ইমপোর্ট বা আপডেট করে, তারপর থেমে যায়;- এর সেটিংস,
/etc/gifs-server/gifs-server.env(AM_GIFS_ভেরিয়েবলসমূহ, আপগ্রেডের সময় সংরক্ষিত থাকে) এবং/etc/gifs-server/api-keys, প্রতি লাইনে একটি API কী, প্রথম ইনস্টলেশনের সময় একটি র্যান্ডম কী জেনারেট করা হয়।
এটি 127.0.0.1:8080-এ লিসেন করে, তাই একই সার্ভারে থাকা Antimatter-এর মধ্যে কেবলমাত্র Antimatter-ই এতে পৌঁছাতে পারে। Antimatter অন্য জায়গায় চললে, gifs-server.env-এ AM_GIFS_LISTEN=:8080 সেট করুন এবং ফায়ারওয়াল দিয়ে পোর্টের অ্যাক্সেস সীমাবদ্ধ করুন। ফাইলে অন্য সেটিংসগুলোও তালিকাভুক্ত: AM_GIFS_UPLOAD_KEYS (যেসব কী দিয়ে GIF এবং স্টিকার যোগ করা যায় এবং সেই কী দিয়ে যোগ করা গুলো মুছে ফেলা যায়), AM_GIFS_PUBLIC_URL, AM_GIFS_TRUST_PROXY এবং AM_GIFS_LOG_LEVEL। প্যাকেজটি ffmpeg, gifsicle, librsvg2-bin (.rpm-এর জন্য librsvg2-tools) এবং একটি DejaVu ফন্ট সুপারিশ করে: ফাইল ইমপোর্ট বা রিসিভ করার সময় GIF, ভিডিও এবং স্টিকার ফরম্যাট তৈরি করতে সার্ভিসটি এগুলোর ব্যবহার করে, এবং এগুলোর ছাড়াও চলতে পারে।
সার্ভারের মতো, ইনস্টলেশনের সময় সার্ভিসটি সক্রিয় (enabled) থাকে কিন্তু শুরু (started) হয় না। প্যাকেজের ধাপ 5-এ দেখানো হয়েছে যেভাবে এটি শুরু করতে হবে। আপগ্রেডের পরে এটি রিস্টার্ট করুন: sudo systemctl restart gifs-server। প্যাকেজটি মুছে ফেললেও /var/lib/gifs-server-এ ক্যাটালগটি সংরক্ষিত থাকে।
পুশ প্রক্সি
রিলিজ: github.com/AntimatterChat/push-proxy/releases। আর্কাইভটি হলো antimatter-push-proxy-<version>-linux-<arch>.tar.gz; প্যাকেজগুলোর নাম antimatter-push-proxy। প্যাকেজটি /usr/bin/antimatter-push-proxy এবং antimatter-push-proxy সার্ভিস ইনস্টল করে, যা antimatter-push-proxy ইউজার হিসেবে চলে এবং /etc/antimatter-push-proxy/antimatter-push-proxy.json পড়ে (আপগ্রেডের সময় এটি সংরক্ষিত থাকে)। Apple এবং Firebase ক্রেডেনশিয়াল /etc/antimatter-push-proxy/certs-এ রাখতে হবে: পুশ নোটিফিকেশন অংশে ব্যাখ্যা করা হয়েছে যে এগুলো কোথা থেকে আসে।
sudo apt install ./antimatter-push-proxy_*_amd64.deb # or: sudo dnf install ./antimatter-push-proxy-*.x86_64.rpm
sudo install -o root -g antimatter-push-proxy -m 0640 \
AuthKey_ABCDE12345.p8 firebase-service-account.json /etc/antimatter-push-proxy/certs/
sudoedit /etc/antimatter-push-proxy/antimatter-push-proxy.json
sudo systemctl start antimatter-push-proxy
journalctl -u antimatter-push-proxy -f
সেটিংস ফাইলে, পথগুলো /etc/antimatter-push-proxy-এর সাপেক্ষে (relative): যেমন "AppleAuthKeyFile": "./certs/AuthKey_ABCDE12345.p8" এবং "ServiceFileLocation": "./certs/firebase-service-account.json"। এরপর Antimatter-এ পুশ নোটিফিকেশন সার্ভার সেট করুন http://<proxy host>:8066 হিসেবে। আপগ্রেডের পরে এটি রিস্টার্ট করুন: sudo systemctl restart antimatter-push-proxy।
অন্যান্য সার্ভার কমান্ড
সার্ভার চালানোর (antimatter, অথবা antimatter server) পাশাপাশি, বাইনারিটিতে কিছু রক্ষণাবেক্ষণ কমান্ড রয়েছে। এগুলো সার্ভারের মতোই একই কনফিগারেশন পড়ে।
| কমান্ড | এটি কী করে |
|---|---|
antimatter version | ভার্সন, বিল্ড নম্বর, বিল্ড তারিখ এবং বিল্ড হ্যাশ প্রিন্ট করে। |
antimatter db ping | যাচাই করে যে ডাটাবেসে পৌঁছানো সম্ভব। |
antimatter db init | ডাটাবেসে কনফিগারেশন তৈরি করে (AM_CONFIG একটি postgres:// URL-এ সেট করে)। |
antimatter db migrate | সার্ভার স্টার্ট না করে ডাটাবেস মাইগ্রেশন প্রয়োগ করে। |
antimatter db version | ডাটাবেসে প্রয়োগ করা শেষ মাইগ্রেশনটি প্রিন্ট করে। |
antimatter import bulk, antimatter export bulk | বাল্ক ফরম্যাটে ডেটা ইমপোর্ট বা এক্সপোর্ট করে (দেখুন Backups and upgrades)। |