Cryptpad-server-upgrade: Difference between revisions
Initial |
syntax Tag: 2017 source edit |
||
Line 1: | Line 1: | ||
= Updating CryptPad = | |||
This guide provides step-by-step instructions to update CryptPad to the latest version, including fetching the latest release, ensuring dependencies are installed, and restarting the server. | |||
== Finding the Latest Release == | |||
CryptPad releases can be found on their official GitHub page: [https://github.com/cryptpad/cryptpad/releases CryptPad Releases]. | |||
< | Before proceeding, ensure you back up your CryptPad data directory to prevent data loss during the update process. | ||
<pre> | |||
tar -czf cryptpad_backup_$(date +"%Y-%m-%d").tar.gz /path/to/cryptpad/data | |||
</pre> | |||
Replace `/path/to/cryptpad/data` with the actual path to your CryptPad data directory. | |||
== Steps to Update CryptPad == | |||
=== 1. Fetch Latest Tags === | |||
Ensure your local repository is updated with the latest tags: | |||
<pre> | |||
git fetch origin --tags | |||
</pre> | |||
This command synchronizes your local repository with the latest updates from the CryptPad GitHub repository. | |||
=== 2. Check Out the Latest Release === | |||
Identify and check out the latest release tag. Replace `2024.3.0` with the tag corresponding to the latest release: | |||
<pre> | |||
git checkout 2024.3.0 | |||
</pre> | |||
=== 3. Install JavaScript Dependencies === | |||
Ensure all necessary JavaScript components are installed: | |||
<pre> | |||
npm ci | |||
npm install | npm install | ||
npm run install:components</ | npm run install:components | ||
</pre> | |||
* `npm ci`: Installs dependencies as specified in the `package-lock.json` file. | |||
* `npm install`: Installs missing dependencies or updates existing ones. | |||
* `npm run install:components`: Ensures all required components for CryptPad are installed and configured. | |||
=== 4. Restart the CryptPad Server === | |||
Restart the CryptPad server to apply the updates: | |||
<pre> | |||
systemctl restart cryptpad | |||
systemctl status cryptpad | |||
</pre> | |||
* Use `systemctl status cryptpad` to verify the server is running correctly. | |||
== Additional Notes == | |||
=== Testing the Update === | |||
After the server restarts, navigate to your CryptPad instance in a web browser and ensure all functionalities are working correctly. Common areas to test include: | |||
* Logging in and creating new pads. | |||
* Sharing and collaborating on pads. | |||
* Exporting and importing pads. | |||
=== Troubleshooting === | |||
If you encounter issues after updating: | |||
1. Check the server logs for errors: | |||
<pre> | |||
journalctl -u cryptpad | |||
</pre> | |||
2. Verify file permissions and ownership in the CryptPad directory. | |||
3. Ensure all dependencies are up-to-date by running: | |||
<pre> | |||
npm outdated | |||
</pre> | |||
4. Roll back to your previous working version using the backup created earlier. | |||
=== Automating Updates === | |||
To simplify future updates, consider creating a script: | |||
<pre> | |||
#!/bin/bash | |||
# Update CryptPad script | |||
# Variables | |||
CRYPTPAD_DIR="/path/to/cryptpad" | |||
LATEST_TAG=$(git -C $CRYPTPAD_DIR tag | sort -V | tail -n 1) | |||
# Navigate to CryptPad directory | |||
cd $CRYPTPAD_DIR | |||
# Fetch and update | |||
git fetch origin --tags | |||
git checkout $LATEST_TAG | |||
# Install dependencies | |||
npm ci | |||
npm install | |||
npm run install:components | |||
# Restart service | |||
systemctl restart cryptpad | |||
systemctl status cryptpad | |||
</pre> | |||
Replace `/path/to/cryptpad` with the path to your CryptPad installation. | |||
== References == | |||
* [https://github.com/cryptpad/cryptpad/releases CryptPad Releases] | |||
* [https://docs.npmjs.com/cli/v7/commands/npm-ci npm ci Documentation] | |||
* [https://systemd.io SYSTEMD Documentation] | |||
[[Category:CryptPad]] | |||
[[Category:Guides]] | |||
[[Category:Updates]] | |||
[[Category:Self-Hosting]] |
Latest revision as of 19:05, 3 December 2024
Updating CryptPad
This guide provides step-by-step instructions to update CryptPad to the latest version, including fetching the latest release, ensuring dependencies are installed, and restarting the server.
Finding the Latest Release
CryptPad releases can be found on their official GitHub page: CryptPad Releases.
Before proceeding, ensure you back up your CryptPad data directory to prevent data loss during the update process.
tar -czf cryptpad_backup_$(date +"%Y-%m-%d").tar.gz /path/to/cryptpad/data
Replace `/path/to/cryptpad/data` with the actual path to your CryptPad data directory.
Steps to Update CryptPad
1. Fetch Latest Tags
Ensure your local repository is updated with the latest tags:
git fetch origin --tags
This command synchronizes your local repository with the latest updates from the CryptPad GitHub repository.
2. Check Out the Latest Release
Identify and check out the latest release tag. Replace `2024.3.0` with the tag corresponding to the latest release:
git checkout 2024.3.0
3. Install JavaScript Dependencies
Ensure all necessary JavaScript components are installed:
npm ci npm install npm run install:components
- `npm ci`: Installs dependencies as specified in the `package-lock.json` file.
- `npm install`: Installs missing dependencies or updates existing ones.
- `npm run install:components`: Ensures all required components for CryptPad are installed and configured.
4. Restart the CryptPad Server
Restart the CryptPad server to apply the updates:
systemctl restart cryptpad systemctl status cryptpad
- Use `systemctl status cryptpad` to verify the server is running correctly.
Additional Notes
Testing the Update
After the server restarts, navigate to your CryptPad instance in a web browser and ensure all functionalities are working correctly. Common areas to test include:
- Logging in and creating new pads.
- Sharing and collaborating on pads.
- Exporting and importing pads.
Troubleshooting
If you encounter issues after updating: 1. Check the server logs for errors:
journalctl -u cryptpad
2. Verify file permissions and ownership in the CryptPad directory. 3. Ensure all dependencies are up-to-date by running:
npm outdated
4. Roll back to your previous working version using the backup created earlier.
Automating Updates
To simplify future updates, consider creating a script:
#!/bin/bash # Update CryptPad script # Variables CRYPTPAD_DIR="/path/to/cryptpad" LATEST_TAG=$(git -C $CRYPTPAD_DIR tag | sort -V | tail -n 1) # Navigate to CryptPad directory cd $CRYPTPAD_DIR # Fetch and update git fetch origin --tags git checkout $LATEST_TAG # Install dependencies npm ci npm install npm run install:components # Restart service systemctl restart cryptpad systemctl status cryptpad
Replace `/path/to/cryptpad` with the path to your CryptPad installation.