diff --git a/tutorials/access-mac-mini-with-reemo/index.mdx b/tutorials/access-mac-mini-with-reemo/index.mdx index 8d3eceedb2..e72b9f46fb 100644 --- a/tutorials/access-mac-mini-with-reemo/index.mdx +++ b/tutorials/access-mac-mini-with-reemo/index.mdx @@ -12,6 +12,11 @@ dates: validation: 2025-01-30 posted: 2022-02-18 --- +import image from './assets/scaleway-reemo-portal-1.webp' +import image2 from './assets/scaleway-reemo-download.webp' +import image3 from './assets/scaleway-reemo-dashboard.webp' +import image4 from './assets/scaleway-reemo-m1.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -41,7 +46,7 @@ In this tutorial, you will learn how to launch your Mac mini development environ 1. Go to the [Reemo portal](https://portal.reemo.io/) and click **Register now** to create your Reemo account. - + 2. Enter your personal details and click **Register**. You will receive an email with a confirmation code. 3. Open your email account and check your security code. Then enter the code in the form and click **Validate** to confirm the account creation. @@ -66,7 +71,7 @@ In this tutorial, you will learn how to launch your Mac mini development environ ``` You can find the latest version of Reemo and instructions on how to install the application at [https://reemo.io/download](https://reemo.io/download/) - + 4. Enter the **private key** of your Reemo account when prompted. Press Enter to validate. 5. Give Reemo access to screen recording (necessary for it to work). This needs to be done on macOS GUI using your existing [remote desktop connection](/apple-silicon/how-to/access-remote-desktop-mac-mini/). Then, in **System Settings**, click **Privacy & Security** in the sidebar (you may need to scroll down). Turn on **Screen Recording** and **Accessibility** for the Reemo app. @@ -79,9 +84,9 @@ In this tutorial, you will learn how to launch your Mac mini development environ Reemo works on any device capable of running the Chrome browser. This could be your PC, tablet, phone or any other device running Chrome. 2. Click on your Mac mini to open a session. The remote connection is established directly from your Chrome browser. - + 3. Log in your macOS using your credentials. - + Your Mac mini will be displayed through Chrome. diff --git a/tutorials/actility-lorawan-operator/index.mdx b/tutorials/actility-lorawan-operator/index.mdx index 93cd461217..a6d93766a1 100644 --- a/tutorials/actility-lorawan-operator/index.mdx +++ b/tutorials/actility-lorawan-operator/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-03-27 posted: 2020-07-02 --- +import image from './assets/scaleway-iothub_howto_actility_grafana.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -87,6 +89,6 @@ Extend your capabilities by harnessing IoT Hub to construct a dashboard and visu Your dashboard will now provide insightful visualizations of your LoRaWAN© device data. - + Explore [Scaleway IoT Hub](/iot-hub/concepts/) further, learn how to [add Devices to the hub](/iot-hub/how-to/add-device/), and review [IoT Hub metrics](/iot-hub/how-to/view-metrics/). \ No newline at end of file diff --git a/tutorials/add-disk-configure-datastore-esxi/index.mdx b/tutorials/add-disk-configure-datastore-esxi/index.mdx index b01f746050..d53db8eba4 100644 --- a/tutorials/add-disk-configure-datastore-esxi/index.mdx +++ b/tutorials/add-disk-configure-datastore-esxi/index.mdx @@ -13,6 +13,31 @@ dates: validation: 2025-03-27 posted: 2020-01-21 --- +import image from './assets/scaleway-add_disk_customize.webp' +import image2 from './assets/scaleway-add_disk_choose_storage.webp' +import image3 from './assets/scaleway-add_disk_validate_order.webp' +import image4 from './assets/scaleway-add_disk_vmware.webp' +import image5 from './assets/scaleway-add_disk_vmware_dashboard.webp' +import image6 from './assets/scaleway-add_disk_not_visible.webp' +import image7 from './assets/scaleway-add_disk_connect_idrac.webp' +import image8 from './assets/scaleway-add_disk_physical_disks.webp' +import image9 from './assets/scaleway-add_disk_physical_disks_list.webp' +import image10 from './assets/scaleway-add_disk_virtual_disk_create.webp' +import image11 from './assets/scaleway-add_disk_virtual_disk_settings.webp' +import image12 from './assets/scaleway-add_disk_power_cycle_system.webp' +import image13 from './assets/scaleway-add_disk_virtual_disk_created.webp' +import image14 from './assets/scaleway-add_disk_new_datastore.webp' +import image15 from './assets/scaleway-add_disk_new_datastore_create.webp' +import image16 from './assets/scaleway-add_disk_select_device.webp' +import image17 from './assets/scaleway-add_disk_select_partitioning_options.webp' +import image18 from './assets/scaleway-add_disk_confirm_partition.webp' +import image19 from './assets/scaleway-add_disk_new_datastore.webp' +import image20 from './assets/scaleway-add_disk_increase_datastore.webp' +import image21 from './assets/scaleway-add_disk_select_datastore.webp' +import image22 from './assets/scaleway-add_disk_select_datastore.webp' +import image23 from './assets/scaleway-add_disk_increase_datastore_partitioning.webp' +import image24 from './assets/scaleway-add_disk_ready_to_extend.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -47,7 +72,7 @@ This guide is designed to walk you through the process of ordering an additional 2. Click **Server** > **Server list** to see the list of your Dedibox dedicated servers. 3. Select the Dedibox to configure from the list and click **Manage** 4. Click **Customize** in the side menu: - + 5. Select either an **USB disk** or an **Internal disk** for your server. The setup cost displayed is a one-time fee billed for the physical installation of the disk in the chassis. @@ -57,19 +82,19 @@ This guide is designed to walk you through the process of ordering an additional For optimal performance, we recommend you use an internal disk as datastore. - + 6. Select the payment method for the installation fees and validate your order. - + The disk is installed within approximately one hour from the moment you place the order. 8. Connect to the ESXi web interface at `https://your_scaleway_dedibox_ip/` and log in: - + The ESXi Dashboard displays. - + 9. Click **Storage** to enter the storage section. ## Creating a virtual disk from the iDRAC interface on a hardware RAID @@ -78,29 +103,29 @@ If your Dedibox uses a [software RAID](https://en.wikipedia.org/wiki/RAID#SOFTWA If you find that the newly installed disk does not appear in your ESXi web interface after installation, it may be the case that your server has a hardware RAID. - + Depending on the configuration of your Dedibox, the server may come with a [hardware RAID](https://en.wikipedia.org/wiki/Disk_array_controller). On this type of server, you cannot configure the datastore directly from ESXi. Instead, you must create a virtual disk from the KVM-over-IP interface of the server before adding the disk to ESXi. To do so, follow these steps: 1. Launch an iDRAC session from the server overview in the Dedibox console: - + 2. Log into iDRAC using the credentials available from the KVM over IP page of the Dedibox console. 3. Click **Physical Disks** to verify that the disk is physically available: - + A list of all installed disks and their status displays at the bottom of the page. - + 4. Check that all disks are **OK**, and click **Virtual Disks** in the side-menu. The list of all existing virtual disks displays. 5. Click **Create** in the menu bar to create a new virtual disk. - + 6. Select the newly installed disk from the list. You can keep the default parameters for a basic configuration, or fine-tune them towards your needs. - + 7. Click **Create Virtual Disk** to schedule the creation of a new virtual disk, usable for ESXi during the next reboot. 8. Click **Overview** in the side-menu to go back to the home page of iDRAC, then click **Power Cycle System (cold boot)** to reboot the machine. The virtual disk will be configured during the boot process. - + Your machine will be unavailable during the creation of the new virtual disk. We recommend you launch the reboot during the hours of low load on your machine. @@ -108,45 +133,45 @@ Depending on the configuration of your Dedibox, the server may come with a [hard After rebooting, the new virtual disk shows up in the list of available disks in ESXi: - + ## Adding the disk as a datastore to ESXi When you add a disk as a new datastore, it is formatted and becomes available to store virtual machine images. You can decide on which datastore of the server you want to store the machine images. This can be useful if you have both HDD and SSD storage and you need different specifications for performance or storage. 1. Click **New Datastore** on the storage dashboard of the vSphere web client: - + 2. Select the option **Create new VMFS datastore** and click **Next**: - + 3. Select the device from the list of available devices and enter a name for the new datastore. Then click **Next**: - + 4. Select the partitioning options. To use the full disk as datastore, choose **Use full disk**, then click **Next**: - + 5. A summary displays. Click **Finish** to complete the wizard. All existing data on the disk will be overwritten. Make sure that you have a backup of your data before launching the last step. - + ## Increasing the size of an existing datastore It is also possible to increase the size of an existing datastore. In this case, the capacity of the newly installed disk will be added to the main datastore of the server which can be useful to extend storage capacity for large virtual machines. 1. Click **New Datastore** in the storage dashboard of the vSphere web client. - + 2. Select **Increase the size of an existing VMFS datastore** and click **Next**: - + 3. Select the datastore to extend from the list and confirm by clicking on **Next**: - + 4. Select the disk to add to the datastore: - + 5. Select a partitioning configuration for the disk. To use all available disk space, go with the default settings and click **Next**: - + The summary displays. 6. Check the summary settings and click **Finish**: - + The disk is added to the datastore and the total storage capacity of the datastore is increased. diff --git a/tutorials/ark-server/index.mdx b/tutorials/ark-server/index.mdx index 719540130f..5c05ccc447 100644 --- a/tutorials/ark-server/index.mdx +++ b/tutorials/ark-server/index.mdx @@ -13,6 +13,9 @@ dates: validation: 2025-03-27 posted: 2020-11-10 --- +import image from './assets/scaleway-ark.webp' +import image2 from './assets/scaleway-steam_terms.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -26,7 +29,7 @@ _ARK: Survival Evolved_ is a survival game, as the title indicates, where you ar The game supports both single-player local games and massive multi-player games using more than 100 ARK servers. You can create a tribe on the server and invite your friends to join your tribe to be even stronger. In your tribe, all tamed dinosaurs and building structures are usually shared between tribe members, and you can delegate tasks to other members of your tribe. - + ## Why should I start an ARK server? @@ -77,7 +80,7 @@ Creating an ARK server can be done in a few steps on a [Scaleway Instance](https During installation, you are requested to agree to Steam's license agreement. Use the **Tab** key to move to **OK**, then press **Enter** to accept the terms: - + 5. Enter the `steam` user account and create a new directory for the ARK server. Make sure to have at least 12 GB of free disk space available to be able to download and expand all ARK server files. diff --git a/tutorials/arqbackup-pc-mac/index.mdx b/tutorials/arqbackup-pc-mac/index.mdx index d51d0edb5d..1ad38b13fa 100644 --- a/tutorials/arqbackup-pc-mac/index.mdx +++ b/tutorials/arqbackup-pc-mac/index.mdx @@ -13,6 +13,20 @@ dates: validation: 2025-03-27 posted: 2019-07-20 --- +import image from './assets/scaleway-arq7_splash.webp' +import image2 from './assets/scaleway-arq7_license.webp' +import image3 from './assets/scaleway-arq7_disk_access.webp' +import image4 from './assets/scaleway-arq7_create_backup.webp' +import image5 from './assets/scaleway-arq7_s3.webp' +import image6 from './assets/scaleway-arq7_s3_credentials.webp' +import image7 from './assets/scaleway-arq7_choose_storage.webp' +import image8 from './assets/scaleway-arq7_password.webp' +import image9 from './assets/scaleway-arq7_summary.webp' +import image10 from './assets/scaleway-arq7_status.webp' +import image11 from './assets/scaleway-arq7_edit_plan.webp' +import image12 from './assets/scaleway-arq7_restore.webp' +import image13 from './assets/scaleway-arq7_restore_settings.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -31,17 +45,17 @@ This tutorial guides you through backing up your PC or Mac computer to Scaleway 1. Open your web browser and go to the [Arq website](https://www.arqbackup.com/index.html) and download the application for your operating system. 2. Double-click the downloaded file to open the setup tool. Follow the instructions given by the setup wizard to complete the installation of the application. 3. Start the Arq application once it is installed. Enter your license code or start the free trial: - + 4. Validate the terms of service to use the application: - + 5. Gain full disk access to the application, so it can back up the entire disk of your computer: - + The main window displays. 6. Click **Create a backup plan** to add a new backup endpoint: - + 7. Select **S3-Compatible Server** as storage location and click **OK**: - + 8. Enter the Object Storage credentials: - **Server URL:** The URL of the Object Storage endpoint: - For FR-PAR (Paris, France) enter `https://s3.fr-par.scw.cloud` @@ -51,14 +65,14 @@ This tutorial guides you through backing up your PC or Mac computer to Scaleway - **Secret key:** The [secret key](/iam/how-to/create-api-keys/) of the API key used for authentication - **Region**: The region of your Object Storage bucket (`fr-par`, `nl-ams`, or `pl-waw`) - + 9. Choose the bucket for storing backups. Two options are proposed: - Create a new bucket - Choose an existing bucket from the drop-down list 10. Create the new backup plan using the previously configured storage location. Click **Continue** to confirm: - + 11. Configure an optional password to increase the security of your backups. You will need this password to decrypt your data. Tick the checkbox and enter your password and its confirmation, then click **Continue** to confirm: - + Make a note of the password and keep it in a safe place. It is not possible to decrypt a backup without having the password. You can restore backups using the Arq Backup application, or an open source [restore tool](https://arqbackup.github.io/arq_restore/). @@ -66,24 +80,24 @@ This tutorial guides you through backing up your PC or Mac computer to Scaleway A summary of your configuration displays. 12. Click **Create** to validate the settings and to create the new backup plan: - + The status of the new backup plan displays. By default, Arq makes an hourly backup of the entire disk of your computer: - + If required, the backup frequency and the files and folders to back up can be adjusted from the backup plan preferences by clicking on **Edit** in the plan details: - + ### Restoring files 1. Go to the **Restore Files** section of Arq: - + 2. Expand the menu on the left to see a list of all backups. They are sorted by the time/date of their creation. Click the desired backup, and the contents of the backup appear on the right. - Click the Item to restore, then click the **Restore...** button. - Choose if you want to restore the item in its original location, on the desktop, or in another specific location. Tick the checkbox if you want to overwrite existing files, then click **Restore**. - Arq may prompt for an administrator username and password to avoid permission issues when restoring files. - + Alternatively, it is possible to restore files anywhere by dragging and dropping them from the backup window to the desktop or a Finder window diff --git a/tutorials/backup-synology-nas-s3-hyper-backup/index.mdx b/tutorials/backup-synology-nas-s3-hyper-backup/index.mdx index 4d573ca3d9..b8bcb0f466 100644 --- a/tutorials/backup-synology-nas-s3-hyper-backup/index.mdx +++ b/tutorials/backup-synology-nas-s3-hyper-backup/index.mdx @@ -13,6 +13,15 @@ dates: validation: 2025-06-09 posted: 2019-12-03 --- +import image from './assets/scaleway-synology_01.webp' +import image2 from './assets/scaleway-synology_02.webp' +import image3 from './assets/scaleway-synology_03.webp' +import image4 from './assets/scaleway-synology_04.webp' +import image5 from './assets/scaleway-synology_05.webp' +import image6 from './assets/scaleway-synology_06.webp' +import image7 from './assets/scaleway-synology_07.webp' +import image8 from './assets/scaleway-synology_08.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -33,13 +42,13 @@ As the NAS holds huge amounts of your personal data, a good backup strategy is i 1. Connect to the administration interface of your NAS and launch the **Hyper Backup** application. 2. Click **+** to open the menu, then click **Data backup task** to launch the backup configuration wizard. - + 3. Choose **S3 Storage** as backup destination from the list: - + 4. Choose **Create backup task** and select **Custom Server URL** from the drop-down list in the **S3 Server** section: - + 5. Enter the credentials for your Scaleway Object Storage bucket: - + - **Server address**: The address of the Object Storage endpoint
It can be either @@ -54,12 +63,12 @@ As the NAS holds huge amounts of your personal data, a good backup strategy is i Click **Next** to continue to the following step. 6. Select the directories of your NAS that you want to back up. Then click **Next** to continue to the following step: - + 7. Select the applications that you want to back up, then click **Next** to continue to the following step: - + 8. Configure the backup settings. You can customize the backup schedule and several options depending on your requirements. If you do not have special requirements, you can go with the default settings. Click **Next** to continue to the following step: - + 9. The backup configuration is now complete. The NAS will initialize the backup process and run a first backup. Once completed a **Succeed** message appears: - + For more information regarding Hyper Backup, refer to the [software specifications](https://www.synology.com/en-us/dsm/software_spec/hyper_backup) and the [official documentation](https://kb.synology.com/en-us/DSM/tutorial/How_to_back_up_your_data_to_cloud_services_with_Hyper_Backup). \ No newline at end of file diff --git a/tutorials/bash-christmas-tree/index.mdx b/tutorials/bash-christmas-tree/index.mdx index 20a17c3bed..25ec9baf1c 100644 --- a/tutorials/bash-christmas-tree/index.mdx +++ b/tutorials/bash-christmas-tree/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-03-27 posted: 2019-11-26 --- +import image from './assets/scaleway-animated-tree.gif' + **Bash**, short for Bourne Again Shell, represents an improved version of Sh (Bourne Shell) and comes built-in with Linux and macOS operating systems. Serving as a shell, it furnishes a command line interface (CLI) for engaging with the computer's operating system. This interface deciphers commands in plain text format, conveying the instructions to the operating system to execute corresponding actions. @@ -122,7 +124,7 @@ ssh root@ ``` The script writes an animated tree on the terminal window: - + 2. Exit the script by pressing `CTRL` + `c`. + Kafka needs at least one server to run the application on, called **broker**, a cluster can consist of multiple brokers that can be distributed in different data centers and physical locations for redundancy and stability. diff --git a/tutorials/configure-apache-lets-encrypt/index.mdx b/tutorials/configure-apache-lets-encrypt/index.mdx index 24241b1b94..2c9b1ccdfe 100644 --- a/tutorials/configure-apache-lets-encrypt/index.mdx +++ b/tutorials/configure-apache-lets-encrypt/index.mdx @@ -13,6 +13,9 @@ dates: validation: 2025-04-08 posted: 2019-05-23 --- +import image from './assets/scaleway-config_apache.webp' +import image2 from './assets/scaleway-ssl_enabled.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -83,7 +86,7 @@ We will walk you through the process of setting up a website on Apache and obtai Once edited the file should look like this example: - + 7. Activate the new site: ``` a2ensite myweb.example.com @@ -122,6 +125,6 @@ apt install certbot python3-certbot-apache -y https://www.ssllabs.com/ssltest/analyze.html?d=myweb.example.com ``` 2. Verify the certificate by opening your site in a web browser: - + The small padlock icon indicates that the connection to your Instance is now encrypted. \ No newline at end of file diff --git a/tutorials/configure-failover-proxmox/index.mdx b/tutorials/configure-failover-proxmox/index.mdx index d8d325e6db..de1535e456 100644 --- a/tutorials/configure-failover-proxmox/index.mdx +++ b/tutorials/configure-failover-proxmox/index.mdx @@ -12,6 +12,31 @@ dates: validation: 2025-05-12 posted: 2020-01-23 --- +import image from './assets/scaleway-proxmox_dashboard.webp' +import image2 from './assets/scaleway-proxmox_templates.webp' +import image3 from './assets/scaleway-proxmox_templates_dl.webp' +import image4 from './assets/scaleway-proxmox_iso_upload.webp' +import image5 from './assets/scaleway-proxmox_kvm_upload_iso.webp' +import image6 from './assets/scaleway-proxmox_create_ct.webp' +import image7 from './assets/scaleway-proxmox_ct_general_01.webp' +import image8 from './assets/scaleway-proxmox_ct_template_02.webp' +import image9 from './assets/scaleway-proxmox_ct_disk_03.webp' +import image10 from './assets/scaleway-proxmox_ct_cpu_04.webp' +import image11 from './assets/scaleway-proxmox_ct_ram_05.webp' +import image12 from './assets/scaleway-proxmox_ct_eth_06.webp' +import image13 from './assets/scaleway-proxmox_ct_dns_07.webp' +import image14 from './assets/scaleway-proxmox_ct_summary_08.webp' +import image15 from './assets/scaleway-proxmox_ct_ping_09.webp' +import image16 from './assets/scaleway-proxmox_kvm_create.webp' +import image17 from './assets/scaleway-proxmox_kvm_create_01.webp' +import image18 from './assets/scaleway-proxmox_kvm_os_02.webp' +import image19 from './assets/scaleway-proxmox_kvm_system_03.webp' +import image20 from './assets/scaleway-proxmox_kvm_hdd_04.webp' +import image21 from './assets/scaleway-proxmox_kvm_cpu_05.webp' +import image22 from './assets/scaleway-proxmox_kvm_cpu_05.webp' +import image23 from './assets/scaleway-proxmox_kvm_summary_08.webp' +import image24 from './assets/scaleway-proxmox_kvm_install_09.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -36,7 +61,7 @@ The software provides an intuitive web interface as well as a complete REST-API 1. Open a web browser on your computer and go to the Proxmox web interface, available at `https://your_dedibox_ip:8006/` 2. Log into the web interface with the `root` user and the password you have set during the installation of Proxmox. 3. The Proxmox dashboard displays: - + ## Proxmox image store @@ -46,9 +71,9 @@ LXC uses pre-built containers. Proxmox provides a selection of the most common c 1. Click **Storage** > **Local** to enter the Local Storage. 2. Click **Templates** to download an image from Proxmox: - + 3. Choose the image to download and click **Download**: - + ### Uploading ISO-files @@ -57,60 +82,60 @@ ISO files are archive files that contain identical copies of the data found on o 1. Click **Storage** > **Local** to enter the Local Storage. 2. Click **Upload** to upload an ISO file from your local computer: - + 3. Choose a local file and upload it to the Proxmox server: - + ## Deploying a virtual machine ### Creating a LXC container 1. Click **Create CT** to launch the LXC container creation wizard: - + 2. Enter the **Hostname** for the container, a **Password** and its confirmation. Optionally you can enter or upload a public SSH key for authentication: - + 3. Choose the template for the LXC container: - + 4. Configure the virtual disk for the cluster. You can set the type of the storage and the capacity of the virtual disk: - + 5. Set the number of virtual CPU cores available for the container: - + 6. Set the amount of available RAM and Swap space for the container towards your requirements: - + 7. Configure the network for the container. Set the parameters as follows to ensure your container has network access: - **Name**: Set this value to `eth0` - **MAC Address**: Set this value to the [virtual MAC address](/dedibox-ip-failover/concepts/#virtual-mac-address) associated to the failover IP of the container. - **Bridge**: Set this value to `vmbr0`. - **IPv4**: Configure the IPv4 of the container as `Static`, enter the failover IP in [CIDR notation](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_notation), and configure the unique gateway `62.210.0.1`. - + 8. Set the resolving DNS servers for the container. You can either configure the DNS servers provided by Scaleway Dedibox (`51.159.47.28` and `51.159.47.26`) or set your preferred DNS resolvers: - + 9. A summary of the containers' configuration displays. If everything is set correctly, click **Finish** to create the container: - + 10. Start the container from the Proxmox web interface. You can use the web console to connect to your virtual machine and test the network connectivity using a `ping`-test: - + ### Creating a KVM virtual machine 1. Click **Create VM** to launch the KVM virtual machine creation wizard: - + 2. Enter a **Name** for the virtual machine. The **Node** and **VM ID** values are pre-filled, leave them as they are. - + 3. Choose the installation media for the virtual machine. Select **CD/DVD disc image file (iso)**, choose the **local** storage, and select the ISO-file downloaded previously. Choose the **Guest OS** type. For a recent Linux distribution, select **Type** `Linux` and **Version** `5.x - 2.6 Kernel`. For other OS types set the values according to the requirements of your operating system. - + 4. Configure graphics card and SCSI controller available for the virtual machine. If no special requirements are needed, leave the default settings: - + 5. Set the parameters of the virtual hard drive. You can go with the default settings and set the disk size to your requirements: - + 6. Choose the CPU settings for the virtual machine. You may set the number of **Sockets**, **Cores** and the **Type** based on your own requirements: - + 7. Set the amount of RAM for the virtual machine towards your requirements -8. Configure the network interface. Set the **bridge** to `vmbr0`, the model to `VirtIO (paravirtualized)`, and configure the [virtual MAC address](/dedibox-ip-failover/concepts/#virtual-mac-address) assigned to the failover IP of the virtual machine. The static [network configuration](/elastic-metal/how-to/configure-flexible-ip/) is done in a later step, during the installation of the operating system. +8. Configure the network interface. Set the **bridge** to `vmbr0`, the model to `VirtIO (paravirtualized)`, and configure the [virtual MAC address](/dedibox-ip-failover/concepts/#virtual-mac-address) assigned to the failover IP of the virtual machine. The static [network configuration](/elastic-metal/how-to/configure-flexible-ip/) is done in a later step, during the installation of the operating system. 9. A configuration summary displays. Click **Finish** if all settings are correct to launch the creation of the virtual machine. - + 10. Start the virtual machine from the Proxmox panel. It boots from the chosen ISO file. Connect to the virtual machine using the console and follow the steps of the operating systems' setup wizard to complete the installation: - + Follow the official documentation to learn more about [VM templates and Clones](https://pve.proxmox.com/wiki/VM_Templates_and_Clones) or watch tutorials on the official [Youtube canal](https://www.youtube.com/user/ProxmoxVE). diff --git a/tutorials/configure-netbox-managed-postgresql-database/index.mdx b/tutorials/configure-netbox-managed-postgresql-database/index.mdx index 9bf2f5d620..9cf2a0b007 100644 --- a/tutorials/configure-netbox-managed-postgresql-database/index.mdx +++ b/tutorials/configure-netbox-managed-postgresql-database/index.mdx @@ -13,6 +13,8 @@ dates: validation: 2025-05-14 posted: 2019-11-14 --- +import image from './assets/scaleway-dbaas_netbox_dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -237,7 +239,7 @@ To provide an additional layer of security, NetBox will be running behind a [NGI Follow our [dedicated documentation](/tutorials/configure-nginx-lets-encrypt/) about Let's Encrypt for detailed information on how to use the `certbot` tool. 7. Open your web browser and point it to your NetBox domain (i.e. `http://netbox.example.com`). The Netbox dashboard displays: - + You can log into Netbox by clicking on the **Log In** button in the top right corner using the username and password of the superuser configured in a previous step. diff --git a/tutorials/configure-nextcloud-ubuntu/index.mdx b/tutorials/configure-nextcloud-ubuntu/index.mdx index 060dbf7036..2fc74e0c1f 100644 --- a/tutorials/configure-nextcloud-ubuntu/index.mdx +++ b/tutorials/configure-nextcloud-ubuntu/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-05-14 posted: 2018-10-26 --- +import image from './assets/scaleway-nextcloud-files.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -120,5 +122,5 @@ You can now access your Nextcloud Instance. 1. Open your browser and type the address of your Instance (For example: `https://your.domain.com`). A login screen displays. 2. Enter the username and password that you have created in the previous steps. Your personal cloud storage space displays. 3. Upload, share, or download files from the interface: - + 4. Optionally, download one of the several [Nextcloud clients](https://nextcloud.com/install/#install-clients) to manage your cloud storage space directly from your computer. \ No newline at end of file diff --git a/tutorials/configure-nginx-lets-encrypt/index.mdx b/tutorials/configure-nginx-lets-encrypt/index.mdx index f5c88959e3..0b71daf25a 100644 --- a/tutorials/configure-nginx-lets-encrypt/index.mdx +++ b/tutorials/configure-nginx-lets-encrypt/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-05-19 posted: 2019-02-28 --- +import image from './assets/scaleway-example_site.webp' +import image2 from './assets/scaleway-example_https.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -105,7 +108,7 @@ The default installation of Nginx on Ubuntu Focal Fossa (20.04 LTS) comes with o systemctl restart nginx.service ``` 8. When typing *http://example.com* in your browser, you should see your newly created placeholder page: - + ### Installing Certbot and obtaining a certificate @@ -160,4 +163,4 @@ The default installation of Nginx on Ubuntu Focal Fossa (20.04 LTS) comes with o You can now open your web browser and type _http**s**://example.com_ to verify that your connection is secure: - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/configure-nodemcu-iot-hub/index.mdx b/tutorials/configure-nodemcu-iot-hub/index.mdx index 8524904dc7..d077db74c8 100644 --- a/tutorials/configure-nodemcu-iot-hub/index.mdx +++ b/tutorials/configure-nodemcu-iot-hub/index.mdx @@ -12,6 +12,36 @@ dates: tags: iot iot-hub NodeMCU Arduino-IDE hero: assets/scaleway_nodemcu.webp --- +import image from './assets/scaleway-nodemcu_01.webp' +import image2 from './assets/scaleway-nodemcu_02.webp' +import image3 from './assets/scaleway-nodemcu_03.webp' +import image4 from './assets/scaleway-nodemcu_04.webp' +import image5 from './assets/scaleway-nodemcu_06.webp' +import image6 from './assets/scaleway-nodemcu_07.webp' +import image7 from './assets/scaleway-nodemcu_08.webp' +import image8 from './assets/scaleway-nodemcu_11.webp' +import image9 from './assets/scaleway-nodemcu_09.webp' +import image10 from './assets/scaleway-mqtt_explorer_01.webp' +import image11 from './assets/scaleway-mqtt_explorer_02.webp' +import image12 from './assets/scaleway-serial_01.webp' +import image13 from './assets/scaleway-mqtt_explorer_03.webp' +import image14 from './assets/scaleway-wireing_01.webp' +import image15 from './assets/scaleway-temp_01.webp' +import image16 from './assets/scaleway-kickstart_01.webp' +import image17 from './assets/scaleway-kickstart_02.webp' +import image18 from './assets/scaleway-kickstart_03.webp' +import image19 from './assets/scaleway-nodered_01.webp' +import image20 from './assets/scaleway-nodered_02.webp' +import image21 from './assets/scaleway-nodered_03.webp' +import image22 from './assets/scaleway-nodered_04.webp' +import image23 from './assets/scaleway-nodered_05.webp' +import image24 from './assets/scaleway-nodered_06.webp' +import image25 from './assets/scaleway-nodered_07.webp' +import image26 from './assets/scaleway-nodered_08.webp' +import image27 from './assets/scaleway-nodered_09.webp' +import image28 from './assets/scaleway-nodered_10.webp' +import image29 from './assets/scaleway-nodered_dash.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -33,35 +63,35 @@ Scaleway's IoT Hub lets your connected devices share messages. In this tutorial, 1. Start the Arduino IDE application on your local computer. 2. Go to **Arduino** menu and click **Preferences**: - + 3. Add the following link in the Additional Boards Manager URLs: `http://arduino.esp8266.com/stable/package_esp8266com_index.json` and click **OK** to validate: - + 4. Go to **Tools** > **Board** > **Board Manager** - + 5. Type `esp` in the search bar and install the **esp8266** boards package. Then close the window. - + 6. Enter the **Tools** menu, then **Board** and select **NodeMCU 1.0 (ESP-12E Module)**. - + Your Arduino IDE is now ready to communicate with the NodeMCU device. ## Creating an IoT Hub 1. Log into your [Scaleway console](https://conole.scaleway.com/) and click on **IoT Hub** in the side menu: - + 2. Click **Create a Hub** and create your new IoT Hub. 3. Enter a name for your hub (here we use iot-hub-esp8266) and choose a plan. For this tutorial, we use the Free plan. If your Project needs more resources you can choose one of the larger hubs. Click **Create a hub** to deploy it. 4. Once your hub is ready, click on it. You will see the following page: - + 5. Navigate to the **Devices** tab and click **Add device** to add a new device to the hub: - + Make sure to enable insecure connections to be able to communicate with the IoT Hub, as we are not using certificates in this tutorial. 6. Click **Add device to your hub** to add the device. 7. Once added, click on the device name to display some statistics about the device. - + Your IoT Hub is now ready to accept connections. @@ -78,9 +108,9 @@ MQTT Explorer is a MQTT client that provides a structured overview of your MQTT Find your Device ID on the "Device Information" screen in your IoT Hub (see above) - + 3. Click **Connect** to establish the connection to your IoT Hub. The following screen displays: - + Your MQTT Explorer is now successfully connected to your IoT Hub. @@ -188,13 +218,13 @@ We now connect the ESP8266 device to our IoT Hub. To do so, some additional libr } ``` 9. Upload your code to your ESP8266 microcontroller. An output as in the following example displays in the Serial Monitor: - + You can access the Serial Monitor from the Arduino IDE by clicking on **Tools** > **Serial Monitor** 10. You can also view the message in the MQTT Explorer tool: - + ## Controlling an LED and measuring temperature and humidity @@ -208,7 +238,7 @@ Next, we will use our NodeMCU device to measure temperature and humidity and pub * Some connectors to complete the wiring 1. Perform the following wiring on the breadboard: - + This is the pinout table of the NodeMCU device: @@ -407,29 +437,29 @@ Next, we will use our NodeMCU device to measure temperature and humidity and pub ``` 3. Transfer the Arduino Sketch to the NodeMCU device and open the Serial Monitor. 4. The following output displays, confirming the successful capture and transmission of temperature and humidity data: - + ## Flow Programming with Node-RED In the following steps, we deploy a [Node-RED](https://nodered.org/) application using the IoT-Hub Kickstart feature and use it for flow programming. 1. Go back to your IoT Hub in the Scaleway console and click on the [Kickstart](https://console.scaleway.com/iot-hub/kickstarts/create) tab. Click **Create a Kickstart**: - + 2. Select the **Flow Programming** Kickstart and choose your Hub and Device from the drop-down lists. Then select a region for your Kickstart to deploy. Click **Create** to deploy the Node-RED application on an [Instance](https://www.scaleway.com/en/virtual-instances/) - + 3. Your IoT Kickstart application is deployed. The deployment may take some seconds, once it is ready, a green dot appears next to it. Click **Dashboard** to access the Node-RED dashboard: - + 4. Log into Node Red using the credentials you have set during the deployment: * Username: `admin` * Password: `your-password` 5. Open the menu and click on **Manage Palette**: - + 6. Find the `node-red-dashboard` and install it: - + 7. Create a layout as follows: - + 8. Then add the following nodes to a new flow: - + The following elements are used: @@ -439,20 +469,20 @@ In the following steps, we deploy a [Node-RED](https://nodered.org/) application * `chart` – will display the temperature sensor readings * `gauge` – will display the humidity sensor readings 9. The **MQTT Out** in Node-RED and the MQTT broker need to be connected. To connect the MQTT broker to Node-RED, double-click the MQTT output node. A new window pops up – as shown in the figure below. It is already pre-configured by the IoT Kickstart, just add the Topic and the Name: - + 10. Now edit the **switch node** as follows: - + 11. Configure the **MQTT input nodes** for `temperature` and `humidity`: - + 12. Edit the **chart node** as follows: - + 13. Edit the **gauge node** as follows: - + 14. Link the nodes as follows: - + 15. Click **Deploy** to deploy the configuration. 16. Open a new browser tab and go to: `http://your-ip:1880/ui/`. A Dashboard showing temperature and humidity displays. You can use the toggle switch for `Light`. If toggled, a notification displays in the Serial Monitor of the NodeMCU device: - + ## Conclusion diff --git a/tutorials/configure-plex-s3/index.mdx b/tutorials/configure-plex-s3/index.mdx index 03e302e5ad..b71dcdea26 100644 --- a/tutorials/configure-plex-s3/index.mdx +++ b/tutorials/configure-plex-s3/index.mdx @@ -14,6 +14,8 @@ dates: validation: 2025-01-30 posted: 2018-09-24 --- +import image from './assets/scaleway-plex-add-folder.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -119,7 +121,7 @@ Plex is a client/server media player system comprising two main components: - Open `http://:32400` in a browser. - Complete the setup wizard. - Add a library and specify `/mnt/media/` as the media folder. - + 4. To upload media, use an S3-compatible tool like Cyberduck. 5. Trigger a media scan in Plex to display new files. diff --git a/tutorials/configure-realtime-alerting-slack/index.mdx b/tutorials/configure-realtime-alerting-slack/index.mdx index b217e8096b..2ca5ac55c4 100644 --- a/tutorials/configure-realtime-alerting-slack/index.mdx +++ b/tutorials/configure-realtime-alerting-slack/index.mdx @@ -13,6 +13,13 @@ dates: validation: 2025-05-26 posted: 2020-11-17 --- +import image from './assets/scaleway-iothub_slack_howto_scopes.webp' +import image2 from './assets/scaleway-iothub_slack_howto_install.webp' +import image3 from './assets/scaleway-iothub_slack_howto_token.webp' +import image4 from './assets/scaleway-iothub_slack_howto_route.webp' +import image5 from './assets/scaleway-iothub_slack_howto_message.webp' +import image6 from './assets/scaleway-iothub_slack_howto_goingfurther.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -39,11 +46,11 @@ There are three steps to achieve this: 1. Create a Slack workspace to be our sandbox. To do so, follow the instructions available on the [Slack website](https://slack.com/create). 2. To create the application, go [to this page](https://api.slack.com/apps/new), type in any name, and select your Slack workspace. 3. Once created, enable the application to send messages to your workspace's channels. Head to the `OAuth & Permissions` page, under `Scopes > Bot Token Scopes`, and add an OAuth scope named `chat:write`. It should look like the following. - + 4. Finally, install the application in your workspace: scroll up the page and click the install button. - + 5. Once authorized, the token used to publish messages from IoT Hub should appear. Write down the token, we will need it for the next step. - + 6. Add your application to a Slack channel. 7. Find the channel ID. To get this ID get the link for any message in the channel (it should look something like `https://iot-sandbox.slack.com/archives/C01FLQXBJF2/p1605613307000200`) and copy the code displayed right after `archives` (here `C01FLQXBJF2`). This is your Slack channel ID, which will be used in a later step. @@ -59,7 +66,7 @@ Here is where the magic happens: We will instruct our IoT Hub to call our Slack 1. In the **Scaleway console**, head to the Routes tab of your IoT Hub. 2. Create a new route with the settings as follows: - + Replace the authorization token with the one you got for your Slack application in the headers. @@ -85,7 +92,7 @@ Now that we have everything set up, let's add a Device and send a message to tri The message appears in the Slack workspace. - + Congratulations, you sent your first Slack message from a (simulated) device. @@ -98,6 +105,6 @@ When you use this tutorial in a production setting, we recommend that you: You can set up your architecture in the following manner: - + Learn more about [Scaleway IoT Hub](/iot-hub/concepts/), discover how to add [Devices to the hub](/iot-hub/how-to/add-device/), or check the [IoT Hub metrics](/iot-hub/how-to/view-metrics/). \ No newline at end of file diff --git a/tutorials/configure-slack-alerting/index.mdx b/tutorials/configure-slack-alerting/index.mdx index 8b2f6497ae..9f2783e235 100644 --- a/tutorials/configure-slack-alerting/index.mdx +++ b/tutorials/configure-slack-alerting/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-02-18 posted: 2025-02-18 --- +import image from './assets/scaleway-slack-alerts-firing.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -84,4 +86,4 @@ If you have created multiple contact points in Grafana, the default contact poin 9. In the **Contact point** field, select the contact point you have configured for Slack. 10. Click **Save policy**. Your nested policy displays. You should now get notified on Slack. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/configure-tem-smtp-with-wordpress-plugin/index.mdx b/tutorials/configure-tem-smtp-with-wordpress-plugin/index.mdx index 6a0759d461..30745b9917 100644 --- a/tutorials/configure-tem-smtp-with-wordpress-plugin/index.mdx +++ b/tutorials/configure-tem-smtp-with-wordpress-plugin/index.mdx @@ -13,6 +13,10 @@ dates: validation: 2025-05-22 posted: 2024-04-24 --- +import image from './assets/scaleway-wordpress-welcome-page.webp' +import image2 from './assets/scaleway-wp-mail-smtp.webp' +import image3 from './assets/scaleway-smtp-config.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -33,7 +37,7 @@ import Requirements from '@macros/iam/requirements.mdx' 1. Copy your Instance's public DNS and paste it into a web browser, then hit `Enter`. The WordPress language configuration page displays. 2. Select your preferred language, then click **Continue**. The WordPress installation page displays. - + 3. Configure your WordPress website, then click **Install WordPress**. A confirmation page displays. 4. Log in to your WordPress website using the credentials you have created. @@ -43,7 +47,7 @@ import Requirements from '@macros/iam/requirements.mdx' 2. Click the **Add New Plugin** section. 3. Type `WP Mail SMTP` in the search bar in the top right-hand corner. 4. Click **Install Now** and wait until you see the **Installed** status. - + 5. Click **Installed Plugins** and check that the plug-in appears in the list of your plugins. 6. Click **Activate** under the plug-in. @@ -58,7 +62,7 @@ import Requirements from '@macros/iam/requirements.mdx' 7. In the **SMTP Port** enter either of the Transactional Email TLS connection ports: `465` or `2465`. 8. Switch on the **Enable Authentication** toggle. 9. Access your [Transactional Email domain](https://console.scaleway.com/transactional-email/domains), retrieve your **Username** in the **SMTP configuration** section of the **Overview** tab, and paste it in the **SMTP Username** field. - + 10. Use your Scaleway API secret key as your SMTP password. 11. Enter the name you want your emails to originate from in the **From Name** field. 12. Switch on the **Force From Name** toggle. This will ignore the **from name** value set by other plug-ins, and force WordPress to use the one you have defined in the step above. diff --git a/tutorials/configure-virtual-machine-esxi/index.mdx b/tutorials/configure-virtual-machine-esxi/index.mdx index aaa108826e..275d75776d 100644 --- a/tutorials/configure-virtual-machine-esxi/index.mdx +++ b/tutorials/configure-virtual-machine-esxi/index.mdx @@ -12,6 +12,26 @@ dates: validation: 2025-01-22 posted: 2020-01-27 --- +import image from './assets/scaleway-click-on-install.webp' +import image2 from './assets/scaleway-virtualizaton-distributions.webp' +import image3 from './assets/scaleway-install-exsi.webp' +import image4 from './assets/scaleway-kvm-over-ip.webp' +import image5 from './assets/scaleway-disclaimer.webp' +import image6 from './assets/scaleway-idrac.webp' +import image7 from './assets/scaleway-vmware_login.webp' +import image8 from './assets/scaleway-vmware_assign_license.webp' +import image9 from './assets/scaleway-vmware_license_added.webp' +import image10 from './assets/scaleway-vmware_datastore_dashboard.webp' +import image11 from './assets/scaleway-vmware_datastore_upload.webp' +import image12 from './assets/scaleway-vmware_create_vm.webp' +import image13 from './assets/scaleway-vmware_create_vm_01.webp' +import image14 from './assets/scaleway-vmware_create_vm_02.webp' +import image15 from './assets/scaleway-vmware_create_vm_04_add_cdrom.webp' +import image16 from './assets/scaleway-vmware_create_vm_04_vmac_iso.webp' +import image17 from './assets/scaleway-vmware_create_vm_05.webp' +import image18 from './assets/scaleway-vmware_start_vm.webp' +import image19 from './assets/scaleway-vmware_install_os.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -39,11 +59,11 @@ There are two ways to install EXSi on a Dedibox server: through the [Dedibox con ### Via the Dedibox console 1. Access the server page of your Dedibox on the console and click **Install**: - + 2. Click **VIRTUALIZATION DISTRIBUTIONS**: - + 3. Select EXSi on the distribution menu, then **EXSi 7.0U1c 64BITS** under **Choose a Version** and click **Install EXSI**: - + 4. Complete the next steps by including your **Partitioning** and **System Configuration** preferences when requested and conclude installation. ### Via KVM over IP @@ -54,15 +74,15 @@ ESXi ISO images are available on VMware's ["Evaluate Products"](https://www.vmwa 1. To begin installation via KVM over IP, access the server page of your Dedibox on the console and click **Install**. 2. Click **KVM over IP**: - + A **Disclaimer** window pops up. 3. Make sure you have read and agreed to the terms displayed and click **I ACCEPT**. - + You are redirected to your server's status page. 4. Click the third button on the right. The model of the KVM over IP device is determined by the brand of your Dedibox chassis. For a Dell chassis, you will use **IDRAC**: - + The process from this step forward may differ according to the KVM model being used. Refer to the Dedibox [KVM over IP documentation](/dedibox-kvm-over-ip/quickstart/) to conclude the installation. @@ -72,29 +92,29 @@ The process from this step forward may differ according to the KVM model being u The ESXI login screen displays. 2. Log in with the user `root` and the password set during the installation of ESXi. - + 3. Click **Manage** (1), then **Licensing** (2) followed by **Assign License** and enter the license code for ESXi. A free ESXi license can be obtained directly [from VMware](https://my.vmware.com/en/group/vmware/evalcenter?p=free-esxi7&lp=default). - + 4. Validate the license. The license details are shown: - + ## Uploading ISO files The VMware ESXi hypervisor uses full virtualization for virtual machines. They can be installed directly from an [ISO file](https://en.wikipedia.org/wiki/ISO_image), like a physical machine. To be able to launch the installation of virtual machines, ISO images have to be available in the local datastore. 1. From the ESXi dashboard, click **Storage** to view the storage dashboard. Click **Datastore Browser** to display the datastore content: - + 2. Click **Upload** and choose an ISO file on your local computer to upload it to the datastore: - + ## Creating virtual machines 1. Click **Virtual Machines** in the side menu to display the virtual machines dashboard. Click **Create / Register VM** to launch the virtual machine creation wizard: - + 2. Select **Create a new virtual machine** and click **Next**: - + 3. Select a **name** and the **guest OS type** for the virtual machine: - + Choose the settings according to your guest operating system. For Ubuntu Linux go with the following settings: @@ -102,19 +122,19 @@ The VMware ESXi hypervisor uses full virtualization for virtual machines. They c - **Guest OS family**: `Linux` - **Guest OS version**: `Ubuntu Linux (64-bit)` 4. Select the datastore in which to store the configuration and disk files: - + The virtual machine settings display. 5. Set the amount of RAM and CPU cores according to your requirements. Click **Add other device** and choose **CD/DVD drive** from the list of options. 6. Click the **Network Adapter 1** to display the advanced settings. Set the **Mac Address** settings to **Manual** (1) and enter the **virtual MAC address** (2) associated with the failover IP of the virtual machine. Click **New CD/DVD Drive** to display the advanced settings. Choose **Datastore ISO file** from the drop-down menu. Click **Browse** (3) in the **CD/DVD Media** section to select the ISO file containing the operating system installer. - + A summary of the configuration displays. 7. Click **Finish** to start the creation of the virtual machine and to leave the configuration wizard: - + 8. Tick the checkbox of the VM (1) on the virtual machine dashboard, then click **Power On** (2) to boot the virtual machine from the ISO file. - + 9. Double-click the console preview to launch the console of the virtual machine. You can now run the installation of your operating system: - + The network configuration of the virtual machine is done during the installation. Refer to the [network configuration documentation](/dedibox-ip-failover/quickstart/) to learn more about how to configure the networking on your operating system. \ No newline at end of file diff --git a/tutorials/configure-vm-hyperv/index.mdx b/tutorials/configure-vm-hyperv/index.mdx index 7352d99417..9817812681 100644 --- a/tutorials/configure-vm-hyperv/index.mdx +++ b/tutorials/configure-vm-hyperv/index.mdx @@ -12,6 +12,26 @@ dates: validation: 2025-05-26 posted: 2020-01-23 --- +import image from './assets/scaleway-click-on-install.webp' +import image2 from './assets/scaleway-distribution-options.webp' +import image3 from './assets/scaleway-install-windows.webp' +import image4 from './assets/scaleway-kvm-over-ip.webp' +import image5 from './assets/scaleway-disclaimer.webp' +import image6 from './assets/scaleway-idrac.webp' +import image7 from './assets/scaleway-hyperv_manager.webp' +import image8 from './assets/scaleway-hyperv_01.webp' +import image9 from './assets/scaleway-hyperv_02.webp' +import image10 from './assets/scaleway-hyperv_03.webp' +import image11 from './assets/scaleway-hyperv_04.webp' +import image12 from './assets/scaleway-hyperv_05.webp' +import image13 from './assets/scaleway-hyperv_06.webp' +import image14 from './assets/scaleway-hyperv_07.webp' +import image15 from './assets/scaleway-hyperv_08.webp' +import image16 from './assets/scaleway-hyperv_09.webp' +import image17 from './assets/scaleway-hyperv_10.webp' +import image18 from './assets/scaleway-hyperv_11.webp' +import image19 from './assets/scaleway-hyperv_12.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -41,11 +61,11 @@ When installing Windows automatically via the console, a monthly subscription to Scaleway Dedibox offers monthly subscriptions to different versions of Microsoft Windows Standard Server licenses, but to benefit from HyperV it is recommended to install the **2012 R2 English (64-bit)** version. 1. Access the server page of your Dedibox on the console and click **Install**: - + 2. Click **Server Distributions**: - + 3. Select **Windows** on the distribution menu, then **windows standard_2012_r2 64BITS** under **Choose a Version** and click **Install Windows**: - + 4. Complete the next steps by including your **Partitioning** and **System Configuration** preferences when requested and conclude installation. ### Via KVM over IP @@ -58,18 +78,18 @@ Your server can also be booted from a Windows Server ISO file through a KVM over 1. Access the server page of your Dedibox on the console and click **Install** to begin installation via KVM over IP. 2. Click **on KVM over IP**. A Disclaimer window pops up. - + 3. Click **I ACCEPT** once you have read and agreed to the terms displayed. You are redirected to your server's status page. - + 4. Click the third button on the right. The model of the KVM over IP device is determined by the brand of your Dedibox chassis. For a Dell chassis, use **IDRAC**. - + The process from this step forward may differ according to the KVM model being used. Refer to the technical documentation of your machine to conclude the installation. ### HyperV on Windows 1. Connect to your server using the [Remote Desktop Protocol](https://en.wikipedia.org/wiki/Remote_Desktop_Protocol) once the installation is complete, and launch the Application **Hyper-V Manager** from the **Windows Administrative Tools** section of the start menu: - + If you can not find the **Hyper-V Manager** application on your machine, the Hyper-V role might not be installed. You can [install the role](https://docs.microsoft.com/en-us/windows-server/virtualization/hyper-v/get-started/install-the-hyper-v-role-on-windows-server) from the Windows Server Manager. @@ -78,27 +98,27 @@ The process from this step forward may differ according to the KVM model being u ## Deploying a Virtual Machine 1. Click **New** in the **Actions** menu, then **Virtual Machine** in the Hyper-V Manager application to launch the virtual machine creation wizard: - + 2. Click **Next** to begin the configuration of the new virtual machine: - + 3. Choose a name and a location for the virtual machine. If no specific configuration is required from your side, leave the default value: - + 4. Choose the generation of the virtual machine. You can either use the older **Generation 1** for compatibility with older versions of Hyper-V, or the newer **Generation 2**. For more information about the different generations, refer to the [official documentation](https://docs.microsoft.com/en-us/windows-server/virtualization/hyper-v/plan/should-i-create-a-generation-1-or-2-virtual-machine-in-hyper-v). - + 5. Assign memory to the virtual machine. You can either define a static value or enable dynamic memory allocation, depending on your workloads: - + 6. Choose the network for the virtual machine. If your Dedibox has more than one network interface, choose the public internet-facing network adapter from the drop-down list: - + 7. Connect the virtual hard disk to the virtual machine. Either create a new virtual disk or choose an existing disk to restore a machine from a previous backup. By default, all virtual disks are stored in the directory `C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks\`. Choose the disk size for the virtual machine to your requirements: - + 8. Choose the installation options for the virtual machine. To create the machine without an operating system, specify a local ISO file or provide information for a network-based installation server. If you have downloaded an ISO file to install your OS, choose the second option and specify the file path before clicking **Next**. Then a configuration summary displays. - + 9. Click **Finish** to launch the creation of the virtual machine: - + 10. Assign a virtual MAC address to the failover IP from the [Dedibox console](https://console.online.net/) to make sure that the virtual machine is able to communicate on the internet. Refer to the [dedicated documentation](/dedibox-ip-failover/how-to/create-virtual-mac/) for more information about how to create a virtual MAC address. Click **Settings** in the VM section of the menu. - + 11. Click **Network Adapter** (1), **Advanced Features** (2), then on **Static** in the **MAC Address** section. Enter the virtual MAC address of the failover IP in the form and validate by clicking on **Apply**, then **OK** to leave the settings window. - + 12. Start the Virtual Machine by clicking on **Start** in the side menu. The virtual machine will boot from the ISO file and the installation wizard of the operating system displays. Follow the steps of the wizard to complete the installation. 13. Configure the virtual networking as described in our [documentation](/elastic-metal/how-to/configure-flexible-ip/) once the installation of the guest OS has been completed. Then, you may run a ping test to check the connectivity of the virtual machine: - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/configuring-gitlab-scaleway-elements-database/index.mdx b/tutorials/configuring-gitlab-scaleway-elements-database/index.mdx index c6981bb747..9d5dcd1fdb 100644 --- a/tutorials/configuring-gitlab-scaleway-elements-database/index.mdx +++ b/tutorials/configuring-gitlab-scaleway-elements-database/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-02-24 posted: 2019-11-08 --- +import image from './assets/scaleway-gitlab_dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -119,6 +121,6 @@ For the following steps, you should be connected to the Ubuntu Bionic Beaver Ins 3. Log in using the user `root` and the password you defined in step 1. The GitLab dashboard displays. You can now configure your GitLab installation, and add users and repositories. All data is stored securely on your Scaleway Database Instance: - + For more information on how to configure GitLab, refer to the official [documentation](https://docs.gitlab.com/ee/administration/index.html#configuring-gitlab). \ No newline at end of file diff --git a/tutorials/configuring-loadbalancer-wordpress/index.mdx b/tutorials/configuring-loadbalancer-wordpress/index.mdx index 3feb43c9b9..ada6c14799 100644 --- a/tutorials/configuring-loadbalancer-wordpress/index.mdx +++ b/tutorials/configuring-loadbalancer-wordpress/index.mdx @@ -13,6 +13,9 @@ dates: validation: 2025-05-27 posted: 2019-04-08 --- +import image from './assets/scaleway-loadbalancer.webp' +import image2 from './assets/scaleway-lb-wp-lbip.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -24,7 +27,7 @@ In case of increasing load on a setup, capacity can easily be increased by addin In this tutorial, you learn how to set up a Scaleway-managed Load Balancer with two [WordPress](/tutorials/wordpress-lemp-stack/) Instances and one Database Instance running [MariaDB](/tutorials/mariadb-ubuntu-bionic/). The final setup is visible in this schema: - + @@ -98,6 +101,6 @@ Update the configuration of each Instance now, so they will use the database on Save the form. 4. Redo this step on the second instance. 5. Type the **Load Balancer's public (flexible) IP address** or your domain name in your browser, and WordPress will appear : - + The Load Balancer is now automatically distributing the load between your Instances. To increase the computing power of the Load Balancer, simply [snapshot](/instances/concepts/#snapshot) an Instance and spin up a new one. \ No newline at end of file diff --git a/tutorials/create-deploy-staging-site-cpanel/index.mdx b/tutorials/create-deploy-staging-site-cpanel/index.mdx index 392a168508..ab4a2d4df8 100644 --- a/tutorials/create-deploy-staging-site-cpanel/index.mdx +++ b/tutorials/create-deploy-staging-site-cpanel/index.mdx @@ -13,6 +13,11 @@ dates: categories: - webhosting --- +import image from './assets/scaleway-cpanel-wp-toolkit.webp' +import image2 from './assets/scaleway-cpanel-wp-clone.webp' +import image3 from './assets/scaleway-cpanel-wp-label.webp' +import image4 from './assets/scaleway-cpanel-wp-copy.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -39,16 +44,16 @@ Creating a staging website for your WordPress website is a smart move, allowing 2. Click or the Web Hosting domain name you want to configure. The **Hosting information** page displays. 3. Click **Control panel dashboard** to open the cPanel interface in a new tab. 4. Log in to your cPanel account and navigate to the **Domains** section. Click **WP Toolkit** to display the WP Toolkit dashboard. - + 5. From the WP Toolkit dashboard, locate the website you want to work with and click on it to access detailed options. 6. Find and click the **Clone** tool within the detailed view. The clone interface displays. - + 7. Designate the subdomain and path for your staging website in the clone interface. You can either use an existing domain or let WP Toolkit create a new one for you. Additionally, you can customize the database name if needed. 8. You can add labels to distinguish staging websites from live ones. Click **Add Label** and choose an appropriate label from the drop-down menu. (This step is optional but recommended.) - + Once the cloning process is complete, your staging website will be ready. You can access it through the main WP Toolkit interface alongside your other websites. Use your staging website to test changes, such as new features, themes, or code edits. Ensure everything works as expected before proceeding. @@ -58,7 +63,7 @@ Use your staging website to test changes, such as new features, themes, or code After testing, it's time to push the changes to your main website. 1. Go to the staging website's WP Toolkit dashboard and click the **Copy Data** tool. - + 2. Select your production website from the drop-down menu in the **Copy Data** interface. 3. Choose which aspects of the website to transfer, including files, databases, and specific tables. 4. Choose whether to overwrite or delete production files affected by changes made on the staging website. diff --git a/tutorials/create-models-django/index.mdx b/tutorials/create-models-django/index.mdx index 72f3408e8f..5638cc2d28 100644 --- a/tutorials/create-models-django/index.mdx +++ b/tutorials/create-models-django/index.mdx @@ -13,6 +13,12 @@ dates: validation: 2025-03-27 posted: 2018-11-02 --- +import image from './assets/scaleway-django_admin_questions.webp' +import image2 from './assets/scaleway-django_admin_questions_2.webp' +import image3 from './assets/scaleway-django_edit_question.webp' +import image4 from './assets/scaleway-django_choices.webp' +import image5 from './assets/scaleway-django_choice_oceane.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -249,15 +255,15 @@ Now that your environment (`my-django`) is set up, we can create a new applicati You now have several questions on your admin interface. - + If you click `Question`, the list of questions added to the configuration file displays. - + Click each question to either edit or delete it. - + ## Adding Related Objects @@ -278,9 +284,9 @@ Now that we have the questions on the admin page, we need to configure the multi You now have `Choice` displayed on your admin interface. - + 3. You can add as many choices as you wish. Click **Choices** to add a choice. 4. Select your question and type your answer. - + You now have a poll with questions and answers. If you want to customize your interface, follow the [official Django documentation](https://docs.djangoproject.com/en/1.8/intro/tutorial02/#customize-the-admin-change-list). \ No newline at end of file diff --git a/tutorials/create-serverless-scraping/index.mdx b/tutorials/create-serverless-scraping/index.mdx index bfab828f3a..7f33f16428 100644 --- a/tutorials/create-serverless-scraping/index.mdx +++ b/tutorials/create-serverless-scraping/index.mdx @@ -14,6 +14,8 @@ dates: validation: 2025-05-19 posted: 2023-12-08 --- +import image from './assets/scaleway-scraping-architecture.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -21,7 +23,7 @@ In this tutorial, we show how to set up a simple application that reads [Hacker - A producer function, activated by a recurrent cron trigger, that scrapes HackerNews for articles published in the last 15 minutes and pushes the title and URL of the articles to a queue created with Scaleway Queues. - A consumer function, triggered by each new message on the queue, that consumes messages published to the queue, scrapes some data from the linked article, and then writes the data into a Scaleway Managed Database. - + We show how to provision all the required Scaleway resources via Terraform/OpenTofu, but you can also use the [console](https://console.scaleway.com/), the [API](https://www.scaleway.com/en/developers/api/) or one of our other supported [developer tools](https://www.scaleway.com/en/developers/). The code for the functions is written in Python. diff --git a/tutorials/create-valheim-server/index.mdx b/tutorials/create-valheim-server/index.mdx index ac2fc78661..85fe09b332 100644 --- a/tutorials/create-valheim-server/index.mdx +++ b/tutorials/create-valheim-server/index.mdx @@ -12,6 +12,8 @@ dates: categories: - instances --- +import image from './assets/scaleway-valheim-logo.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -19,7 +21,7 @@ Valheim is a survival and sandbox video game that was released in early access o Players of the game are Vikings in an afterlife where they have to complete missions like crafting tools, building shelters, and fighting enemies to survive. The game has multiple biomes available, such as meadows, swamps, ashlands, mountains, and oceans. Each of these biomes is unique and comes with its own difficulty level - which means players are confronted with different items and enemies. Players can travel through these biomes by either foot or boat. The game supports multiplayer mode with up to ten concurrent players. - + At Scaleway, we offer a large range of Instances that will suit the gaming needs of your Valheim server. In this tutorial, you will learn how to create your own Valheim server with Scaleway Instances. diff --git a/tutorials/custom-email-domain-icloud/index.mdx b/tutorials/custom-email-domain-icloud/index.mdx index 35c5a3ec63..6a4b8b0c5e 100644 --- a/tutorials/custom-email-domain-icloud/index.mdx +++ b/tutorials/custom-email-domain-icloud/index.mdx @@ -11,6 +11,16 @@ categories: dates: posted: 2025-04-02 --- +import image from './assets/scaleway-icloud-nav.webp' +import image2 from './assets/scaleway-icloud-menu.webp' +import image3 from './assets/scaleway-icloud-own-domain.webp' +import image5 from './assets/scaleway-icloud-dns-mx.webp' +import image6 from './assets/scaleway-icloud-dns-txt.webp' +import image7 from './assets/scaleway-icloud-dns-spf.webp' +import image8 from './assets/scaleway-icloud-dns-dkim.webp' +import image9 from './assets/scaleway-icloud-finish-setup.webp' +import image10 from './assets/scaleway-icloud-address.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -30,20 +40,20 @@ While it is most commonly used for the storage of photos or the backup of device 1. Log into your [iCloud account](https://www.icloud.com/) 2. Click the button that looks like a grid, next to your avatar, in the navbar at the top of the page. A menu displays. - + 3. Click **Custom Email Domain**. A new page with a form displays. If **Custom Email Domain** does not display or you are unable to proceed further, make sure that your iCloud account has access to iCloud+ premium features. - + 4. Click **Add a domain you own**. 5. Select **Only You**. 6. Type the domain you own and want to use for your email address. For example, if you want your email address to be `me@mysuperdomain.com`, type `mysuperdomain.com`. A multi-steps instruction displays. - + 7. Choose **No email addresses** at step 2. 8. Click **View** at step 3. The list of your domain's records displays. Keep this page open since you will need to copy them into your own domain's records in Scaleway DNS. - + ## Configuring the domain's records on Scaleway DNS @@ -67,7 +77,7 @@ There are two MX records. The correspondence between iCloud's MX instructions an | Value | Hostname | mx02.mail.icloud.com. / mx02.mail.icloud.com. | | Priority | Priority | 10 | - + ### TXT record @@ -79,7 +89,7 @@ The correspondence between iCloud's TXT instructions and Scaleway DNS records is | Host | Name | @ | | Value | Value | apple-domain=xxx | - + ### SPF record @@ -91,7 +101,7 @@ The correspondence between iCloud's SPF instructions and Scaleway DNS records is | Host | Name | @ | | Value | Value | "v=spf1 include:icloud.com ~all" | - + ### DKIM record @@ -103,14 +113,14 @@ The correspondence between iCloud's DKIM instruction and Scaleway DNS records is | Host | Name | sig1._domainkey | | Value | Hostname | sig1.dkim.xxx.at.icloudmailadmin.com. | - + ## Verifying the records on iCloud 1. Go back to your iCloud account. 2. Select **Finish setup** at step 4 and click **Confirm**. - + It may take some time for the records to propagate across the network. You can try the **Finish setup** step again later. Refer to the [dedicated documentation](/domains-and-dns/how-to/test-dns-zones-with-dig/#how-to-query-a-specific-record-type) to check if the domain's records are accessible using the `dig` command. @@ -120,7 +130,7 @@ The correspondence between iCloud's DKIM instruction and Scaleway DNS records is If you encounter an error with a record, please double-check that you have entered the exact values from iCloud to your domain's records in Scaleway DNS. 3. Add an email address of your choice. - + You can now send emails using this address via iCloud Mail! diff --git a/tutorials/dagster-serverless-jobs/index.mdx b/tutorials/dagster-serverless-jobs/index.mdx index 211ff77d36..e3041c47bc 100644 --- a/tutorials/dagster-serverless-jobs/index.mdx +++ b/tutorials/dagster-serverless-jobs/index.mdx @@ -15,6 +15,12 @@ dates: validation: 2025-02-11 posted: 2024-01-23 --- +import image from './assets/scaleway-dagster-ui.webp' +import image2 from './assets/scaleway-dagster-materialize.webp' +import image3 from './assets/scaleway-dagster-run.webp' +import image4 from './assets/scaleway-dagster-run.webp' +import image5 from './assets/scaleway-dagster-preview.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -206,25 +212,25 @@ We will install Dagster using the `pip` package installer. Refer to the [Dagster dagster dev ``` Once the output displays the Dagster UI URL, copy it and open it in your browser. - + By default, the Dagster UI is hosted at [`http://127.0.0.1:3000`](http://127.0.0.1:3000). 2. In the Dagster UI, click **Materialize all** on the right to create the [Dagster assets](https://docs.dagster.io/concepts#software-defined-assets) and start your Serverless Job. - + 3. Click **Runs** in the top menu, to display the list of past and current job runs. - + 4. Click the **Run ID** you just created by materializing the assets to access the **Run details** page. From here, you can monitor the execution of your job run. - + 5. Once the job run is done, click **Show Markdown** in the **INFO** column to display a preview of the title, author, and URL of the top Hacker News articles. - + The binary file containing the DataFrame created is stored in the Object Storage bucket. Each new run will overwrite the existing DataFrame contained in the bucket. diff --git a/tutorials/deploy-angular-application/index.mdx b/tutorials/deploy-angular-application/index.mdx index a49118fa85..4cf787be83 100644 --- a/tutorials/deploy-angular-application/index.mdx +++ b/tutorials/deploy-angular-application/index.mdx @@ -11,6 +11,10 @@ dates: validation: 2025-05-26 posted: 2022-04-26 --- +import image from './assets/scaleway-choose-container.webp' +import image2 from './assets/scaleway-deployed-containers.webp' +import image3 from './assets/scaleway-container-endpoint.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -121,15 +125,15 @@ Ensure you have [connected your namespace](/container-registry/how-to/connect-do Provide the following information to deploy the container: - Choose the pushed image in your registry's namespace and set the port value to 80. - + - Choose a name and an optional description for the container - Define the container's resources - Configure the scaling of your application - Leave the other options at their default values 4. Click **Deploy a Container** to deploy your application. Your application displays in the list of containers: - + 5. Click on the container's name. The container information page displays. Click the **Container Settings** tab. The container endpoint displays in the container information block. - + Copy the endpoint URL and open it in a web browser. The Angular application displays. It can now automatically scale based on the application's load and within the ranges set for the deployment. diff --git a/tutorials/deploy-awstats/index.mdx b/tutorials/deploy-awstats/index.mdx index dfa39e74d3..15a9dd39f6 100644 --- a/tutorials/deploy-awstats/index.mdx +++ b/tutorials/deploy-awstats/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-05-02 posted: 2018-12-03 --- +import image from './assets/scaleway-awstats_homepage.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -123,7 +125,7 @@ chmod -R 755 /var/www/html/cgi-bin/ Now you can access your AwStats by visiting the following URL: `http://your-server-ip/cgi-bin/awstats.pl?config=test.com`, which displays: - + ## Setting up a cron job to update logs diff --git a/tutorials/deploy-chatwoot-self-care/index.mdx b/tutorials/deploy-chatwoot-self-care/index.mdx index 08228bac82..3866e148e2 100644 --- a/tutorials/deploy-chatwoot-self-care/index.mdx +++ b/tutorials/deploy-chatwoot-self-care/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-01-02 posted: 2023-05-16 --- +import image from './assets/scaleway-chatwoot-dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -76,7 +78,7 @@ Chatwoot is designed to enhance customer satisfaction and improve customer suppo 6. Point your web browser to the domain name of your Chatwoot Instance and create a first user by entering your email address and password. 7. Log into Chatwoot using your credentials. The Chatwoot dashboard displays and you can customize the application towards your needs. - + ## Upgrading Chatwoot to a newer version diff --git a/tutorials/deploy-instances-packer-terraform/index.mdx b/tutorials/deploy-instances-packer-terraform/index.mdx index 8523fe19e4..1e0a96e8d7 100644 --- a/tutorials/deploy-instances-packer-terraform/index.mdx +++ b/tutorials/deploy-instances-packer-terraform/index.mdx @@ -14,6 +14,8 @@ dates: validation: 2025-04-08 posted: 2018-08-01 --- +import image from './assets/scaleway-packer-image.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -222,7 +224,7 @@ As exemplified below, we will build an Ubuntu image with Apache preinstalled: The newly created image will appear in the image list in your account: - + 4. You can now start one or a series of servers with your new image. ## Deploying machine images with Terraform/OpenTofu diff --git a/tutorials/deploy-k3s-cluster-with-cilium/index.mdx b/tutorials/deploy-k3s-cluster-with-cilium/index.mdx index 470c0584f3..a05b2f3d5c 100644 --- a/tutorials/deploy-k3s-cluster-with-cilium/index.mdx +++ b/tutorials/deploy-k3s-cluster-with-cilium/index.mdx @@ -13,6 +13,8 @@ dates: validation: 2025-05-12 posted: 2023-10-23 --- +import image from './assets/scaleway-validate-configuration.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -309,7 +311,7 @@ Due to GitHub's lack of IPv6 support, you'll need to fetch and save the K3s and 3. Verify that your application is deployed and accessible: `http://[$main]/`. - + 4. Optionally, you can use Cloudflare services to proxy incoming traffic, enabling IPv4 connectivity to your infrastructure. To achieve this, create an AAAA record pointing to the public IPv6 addresses of all your Scaleway Instances. diff --git a/tutorials/deploy-laravel-on-serverless-containers/index.mdx b/tutorials/deploy-laravel-on-serverless-containers/index.mdx index 5f21133534..638441dcc6 100644 --- a/tutorials/deploy-laravel-on-serverless-containers/index.mdx +++ b/tutorials/deploy-laravel-on-serverless-containers/index.mdx @@ -14,6 +14,15 @@ dates: validation: 2025-05-19 posted: 2023-06-01 --- +import image from './assets/scaleway-serverless-messaging-queue.webp' +import image2 from './assets/scaleway-serverless-messaging-credential.webp' +import image3 from './assets/scaleway-serverless-containers-namespace.webp' +import image4 from './assets/scaleway-serverless-container.webp' +import image5 from './assets/scaleway-serverless-endpoint.webp' +import image6 from './assets/scaleway-serverless-laravel.webp' +import image7 from './assets/scaleway-cockpit-loadtesting.webp' +import image8 from './assets/scaleway-cockpit-queue.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -39,11 +48,11 @@ Laravel applications make use of [queues](https://laravel.com/docs/10.x/queues) 1. Create a queue. In this example, we create a `Standard` queue (At-least-once delivery, the order of messages is not preserved) with the default parameters. This queue will be the default queue used by our application. - + 2. Generate credentials. In this example, we generate the credentials with `read` and `write` access. - + ## Building the Laravel Docker image @@ -212,7 +221,7 @@ In this section, we will focus on building the containerized image. With Docker, 1. [Create a Scaleway Container Registry namespace](/container-registry/how-to/create-namespace/) in the `PAR` region. Set the visibility to `Private` to avoid having your container retrieved without proper authentication and authorization. - + 2. Run the following command in your local terminal to log in to the newly created Container Registry. ```sh @@ -240,7 +249,7 @@ The Scaleway documentation website provides a Quickstart on how to [create and m 2. Deploy the application. Click **+ Deploy a Container** once the namespace is created, and follow the instructions of the creation wizard. Select the registry namespace and the previously uploaded Docker image and configure the listening port (the Nginx web server is listening on port 80). For the CPU and memory, define at least 560mVPCU and 256 MB respectively. To reduce the limitations due to [cold start](/serverless-containers/concepts/#cold-start), we will run at least 1 instance. - + 3. Review the logs to confirm that our application is running as expected, and review the logs to check if the supervisor started and spawned nginx, php-fpm, and workers. This step is optional. @@ -259,12 +268,12 @@ Serverless Containers come with a default endpoint name. You can customize this 2. Click **+ Add new Endpoints**. A pop-up displays. 3. Enter the name of your endpoint. You can use any domain or subdomain that you already own. Click **Add Endpoint** to validate. - + A new endpoint displays in the list of endpoints. You can now access the application using your custom endpoint name. - + ## Enabling monitoring and load testing (optionally) @@ -325,7 +334,7 @@ Status code distribution: However, in the background, the infrastructure starts to scale up and the number of containers becomes enough to handle new requests. - + Relaunch the test to confirm that all requests have succeeded thanks to autoscaling. @@ -348,4 +357,4 @@ Response time histogram: ``` Check the Queues overview within Cockpit to also confirm that all jobs have been handled correctly and that the queue is now empty. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/deploy-nextcloud-s3/index.mdx b/tutorials/deploy-nextcloud-s3/index.mdx index 0c781df542..8025f754f6 100644 --- a/tutorials/deploy-nextcloud-s3/index.mdx +++ b/tutorials/deploy-nextcloud-s3/index.mdx @@ -13,6 +13,12 @@ dates: validation: 2025-05-07 posted: 2018-11-16 --- +import image2 from './assets/scaleway-nc_apps.webp' +import image3 from './assets/scaleway-nc_external_storage_enable.webp' +import image4 from './assets/scaleway-nc_admin_ext_storage.webp' +import image5 from './assets/scaleway-nc_config_storage.webp' +import image6 from './assets/scaleway-nc_external_storage_files.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -205,7 +211,7 @@ NextCloud can use Object Storage as primary storage. This gives you the possibil ); ``` 4. Save the configuration file, close the text editor, and open the NextCloud web interface in a browser. NextCloud uses Object Storage for storing files now: - + Accessing the web interface for the first time may take a moment, as NextCloud configures the bucket in the background before displaying the interface. @@ -217,18 +223,18 @@ You can use NextCloud as a client for Object Storage while using Local Storage a 1. Log into your NextCloud to configure the Object Storage bucket. 2. From the NextCloud interface, click **Apps** in the drop-down menu to access the list of available apps: - + 3. Click **Disabled apps** in the left navigation menu. 4. Click **Enable** to enable the **External Storage Support** app: - + You might need to re-enter your admin password to complete this action. 4. Click **Administration Settings** in the drop-down menu, then on **External Storage** in the **Administration** section of the page: - + 5. Configure the credentials for your bucket: - + - **Bucket** - The Name of your bucket - **Hostname** - The hostname of the bucket (For Scaleway Object Storage in Amsterdam: `s3.nl-ams.scw.cloud`, for Scaleway Object Storage in Paris: `s3.fr-par.scw.cloud`, for Warsaw: `s3.pl-waw.scw.cloud`) @@ -241,7 +247,7 @@ You can use NextCloud as a client for Object Storage while using Local Storage a Once you have entered all the details, click the checkmark to validate your configuration. If everything works well, a green dot will appear on the left. 6. Click the **file icon**, then on **External Storage** to access your bucket: - + You can now upload and manage the files in your bucket directly from NextCloud. diff --git a/tutorials/deploy-openproject-database-postgresql/index.mdx b/tutorials/deploy-openproject-database-postgresql/index.mdx index 2595b4d1f2..db8684e14f 100644 --- a/tutorials/deploy-openproject-database-postgresql/index.mdx +++ b/tutorials/deploy-openproject-database-postgresql/index.mdx @@ -14,6 +14,23 @@ dates: validation: 2025-02-18 posted: 2020-07-23 --- +import image from './assets/scaleway-external-database.webp' +import image2 from './assets/scaleway-postgresql-ip-or-hostname.webp' +import image3 from './assets/scaleway-dbaas-port.webp' +import image4 from './assets/scaleway-username.webp' +import image5 from './assets/scaleway-password.webp' +import image6 from './assets/scaleway-database-name.webp' +import image7 from './assets/scaleway-install-apache2.webp' +import image8 from './assets/scaleway-domain-name.webp' +import image9 from './assets/scaleway-path-prefix.webp' +import image10 from './assets/scaleway-enable-ssl.webp' +import image11 from './assets/scaleway-install-git.webp' +import image12 from './assets/scaleway-git-directory.webp' +import image13 from './assets/scaleway-send-mail.webp' +import image14 from './assets/scaleway-memcache.webp' +import image15 from './assets/scaleway-path-to-ssl-certificate.webp' +import image16 from './assets/scaleway-path-to-private-key.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -73,28 +90,28 @@ You can easily configure your stack and dependencies with OpenProject's installe openproject configure ``` 2. Select the **Use an existing PostgreSQL database** option to use your Database for PostgreSQL. - + 3. Insert the database IP. This is found in your Database Instance's **Overview** tab, under **Endpoint**, and is the sequence of numbers before the **:**. - + 4. Enter the PostgreSQL port. This is found in your Database Instance's **Overview** tab, under **Endpoint**, and is the sequence of numbers before the **:**. - + 5. Insert the username created for your Database. - + And the corresponding password: - + 6. Enter the name of your Database Instance (displayed at the top of its *Overview** page, or in the list of your Databases): - + The installer offers the option of installing and configuring a web server using Apache. 7. Select **Install apache2 server** and press enter. - + 8. Insert the domain name pointed toward your Instance. - + 9. Set a path prefix. If you leave the field empty, the installation will be performed on the root of your domain. - + The wizard will then ask if you wish to enable SSL/TLS. 10. Proceed by selecting **No** and pressing enter. - + We will enable TLS to secure and encrypt connections between your users and the instance in a later step. @@ -102,13 +119,13 @@ You can easily configure your stack and dependencies with OpenProject's installe 11. Choose between configuring Apache to automatically create and host SVN or Git repositories. If you wish to use SVN, select **Install Subversion repository support**. If you wish to use Git, select **Skip** and then **Install Git repository support**. In this tutorial, we will install Git. - + 12. Enter the path to the directory that hosts the Git repositories and then the path to the git http backend CGI directory. - + 13. Select an e-mail application you wish to use to send e-mails from OpenProject and fill in the requested information or **Skip**. - + 14. Finally, install the Memcache server. - + The installation completes. @@ -200,10 +217,10 @@ For this purpose, we will be using a [certbot](https://certbot.eff.org/instructi The installation Wizard launches the same prompts as before. Select the same preferences and enter your answers, if necessary, until you reach the `server/ssl` screen. 2. Select `Yes` and enter. When prompted, insert the path to your certificate: - + To your private key: - + And a path to your CA bundle (if you have one). diff --git a/tutorials/deploy-penpot-with-docker-instantapp/index.mdx b/tutorials/deploy-penpot-with-docker-instantapp/index.mdx index e03a83c64b..7c327069ee 100644 --- a/tutorials/deploy-penpot-with-docker-instantapp/index.mdx +++ b/tutorials/deploy-penpot-with-docker-instantapp/index.mdx @@ -13,6 +13,9 @@ dates: posted: 2022-09-28 hero: assets/scaleway-penpot.webp --- +import image from './assets/scaleway-penpot-account-creation.webp' +import image2 from './assets/scaleway-penpot-dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -159,8 +162,8 @@ In this tutorial, you learn how to deploy your own Penpot Instance using the Doc ``` 3. Click **Create an account**. 4. Enter an email address and a password, then click **Create an account**. - + 5. Enter a name and click **Create an account** again to confirm. The Penpot dashboard displays. You can now start designing your assets. - + For a more advanced configuration of additional features, refer to the [official documentation](https://help.penpot.app/technical-guide/configuration/). \ No newline at end of file diff --git a/tutorials/deploy-phpmyadmin-with-docker/index.mdx b/tutorials/deploy-phpmyadmin-with-docker/index.mdx index 9e01023084..fb50577723 100644 --- a/tutorials/deploy-phpmyadmin-with-docker/index.mdx +++ b/tutorials/deploy-phpmyadmin-with-docker/index.mdx @@ -13,6 +13,10 @@ dates: validation: 2025-03-06 posted: 2018-06-04 --- +import image from './assets/scaleway_database_information.webp' +import image2 from './assets/scaleway_phpmyadmin_login.webp' +import image3 from './assets/scaleway_phpmyadmin_dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -61,12 +65,12 @@ In this tutorial, you learn how to deploy the tool on an [Instance](https://www. If you are using a [Database for MySQL](/managed-databases-for-postgresql-and-mysql/quickstart/) you can find the connection details on the Database information page: - + 4. Open a web browser tab and go to `http://:8080`. The phpMyAdmin login displays: - + 5. Enter your MySQL credentials and click **Go**. The phpMyAdmin Dashboard displays: - + You can now manage your MySQL databases using the graphical interface of phpMyAdmin. diff --git a/tutorials/deploy-remote-desktop-ubuntu-2204/index.mdx b/tutorials/deploy-remote-desktop-ubuntu-2204/index.mdx index 36b6e2b888..97320f394e 100644 --- a/tutorials/deploy-remote-desktop-ubuntu-2204/index.mdx +++ b/tutorials/deploy-remote-desktop-ubuntu-2204/index.mdx @@ -12,6 +12,10 @@ dates: validation: 2025-03-27 posted: 2022-05-06 --- +import image from './assets/scaleway-rdp_01.webp' +import image2 from './assets/scaleway-rdp_02.webp' +import image3 from './assets/scaleway-rdp_03.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -128,10 +132,10 @@ We recommend you create a regular user on your Instance, other than the root use 1. Download and install an RDP client of your choice. In this tutorial, we use the [Microsoft Remote Desktop Client](https://docs.microsoft.com/en-us/windows-server/remote/remote-desktop-services/clients/remote-desktop-clients). 2. Start the RDP client and click **Add Desktop** to add a new connection: - + 3. Enter the connection details. You must enter at least your Instance's IP under **PC name**. Optionally, you can add a **Friendly Name** to facilitate the identification of your Instance in case you configure several RDP connections. - + 4. Double-click the connection icon. During the first connection, you may be asked to validate the fingerprint of the Instance. Click **OK** to confirm the connection. 5. Enter the identifier and password of your regular user when prompted. 6. You are now connected and the remote desktop of your Ubuntu Jammy Jellyfish (22.04 LTS) Instance displays. You can launch applications on the remote machine, as you would locally. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/deploy-umami-on-serverless-containers/index.mdx b/tutorials/deploy-umami-on-serverless-containers/index.mdx index b40354c9ce..7efe27f991 100644 --- a/tutorials/deploy-umami-on-serverless-containers/index.mdx +++ b/tutorials/deploy-umami-on-serverless-containers/index.mdx @@ -15,6 +15,14 @@ dates: validation: 2025-03-27 posted: 2021-04-21 --- +import image from './assets/scaleway-umami-namespace-public.webp' +import image2 from './assets/scaleway-serverless-containers-namesp-list.webp' +import image3 from './assets/scaleway-serverless-secrets.webp' +import image4 from './assets/scaleway-container-information.webp' +import image5 from './assets/scaleway-umami-dashboard.webp' +import image6 from './assets/scaleway-serverless-endpoint.webp' +import image7 from './assets/scaleway-serverless-custom-endpoint.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -66,19 +74,19 @@ Umami is a simple, easy-to-use, self-hosted web analytics solution. It provides docker push rg.fr-par.scw.cloud//umami:postgresql-latest ``` 5. Click the **Namespace settings** tab in the **Container Registry** section of the Scaleway console and make sure your namespace privacy policy is set to **Public**. - + ## Deploying the Serverless Container 1. Select the namespace you want to use to deploy the application in the **Serverless Containers** section of the Scaleway console. If you do not have a Serverless Containers namespace yet, click **+ Create a namespace** to create a new one. - + 2. Click **+ Deploy a Container**. The container deployment wizard displays. 3. Choose the namespace you pushed the image to and select the `umami:postgresql-latest` image. Set the value for the port to `3000`. 4. Enter a name for your container. Optionally, you can enter a container description. 5. Select the resources you want to allocate to the container. The resources to allocate depend on the intended load of your application. In this tutorial we use **128 MB - 70 mvCPU**. 6. Configure the minimum and maximum values to autoscale the number of available instances for your container. 7. Set the Secrets. Secrets are an extra-secure type of environment variables that are injected into your container and stored securely: - + Click **+ Add a new secret** to add a secret. Configure the following two secrets: @@ -95,12 +103,12 @@ Umami is a simple, easy-to-use, self-hosted web analytics solution. It provides 1. Click the **Container Settings** tab, to display container information. 2. Copy the URL displayed for **Container Endpoint** and paste it into a web browser. The Umami login screen displays. - + 3. Log in to the Umami interface using the following credentials: * User: `admin` * Password: `umami` - + The Umami dashboard displays and you can add websites to monitor. For more information about Umami refer to the [official documentation](https://umami.is/docs/). @@ -111,7 +119,7 @@ Your Serverless Functions come with a default endpoint name. You can customize t 1. Click the **Endpoints** tab. The endpoint information displays. 2. Click **+ Add new Endpoints**. A pop-up displays. 3. Enter the name of your endpoint. You can use any domain or subdomain that you own. Click **Add Endpoint** to validate. - + Make sure you have configured a valid CNAME record for your domain and activated TLS before adding the endpoint. @@ -119,4 +127,4 @@ Your Serverless Functions come with a default endpoint name. You can customize t The new endpoint displays in the list of endpoints. You can now access your application using your custom endpoint name. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/deploy-wordpress-from-application-library/index.mdx b/tutorials/deploy-wordpress-from-application-library/index.mdx index fd65a6bcf5..b7bfec3f02 100644 --- a/tutorials/deploy-wordpress-from-application-library/index.mdx +++ b/tutorials/deploy-wordpress-from-application-library/index.mdx @@ -12,6 +12,14 @@ dates: validation: 2025-03-27 posted: 2022-04-07 --- +import image from './assets/scaleway-kubernetes-easy-deploy.webp' +import image2 from './assets/scaleway-kubernetes-deploy-app.webp' +import image3 from './assets/scaleway-kubernetes-yaml-editor.webp' +import image4 from './assets/scaleway-kubernetes-deploy-app-summary.webp' +import image5 from './assets/scaleway-kubernetes-deployed-apps-list.webp' +import image6 from './assets/scaleway-kubernetes-kubectl-all.webp' +import image7 from './assets/scaleway-kubernetes-wordpress.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -33,36 +41,36 @@ You can perform most of these steps directly from the Scaleway console. 1. Go to the [Kubernetes dashboard](https://console.scaleway.com/kapsule/clusters) in the Scaleway console. 2. Select the cluster you want to deploy WordPress to. 3. Select the **Easy Deploy** tab. - + The Application Library allows you to deploy a WordPress CMS application. You can use the search bar to locate the application. 4. Click **Deploy an application**. 5. Select **Application Library** as the application type. - + 6. Search for the application you want to deploy using the search bar. The default configuration for the application is set automatically in a [YAML](https://yaml.org) format when you select it. You can edit the configuration to fit to your application deployment within the YAML editor displayed. - + 7. Enter a name for your application and the Kubernetes namespace you want to deploy it to. If no namespace is chosen, your application will be deployed in your cluster's `default` namespace. Deploying in the `default` namespace is not a good practice and it is highly recommended to split your deployments, services, and applications in separate namespaces, thus allowing a more secure configuration of your cluster. 8. Once configured, click **Deploy an application** to deploy your application on your Kubernetes cluster. - + You are then redirected to the listing page of our deployed applications. - + 9. Check that the deployment is successful by running the command `kubectl get all -n cms-ns` in your terminal. - + You can see that your WordPress application is running, and has even created a [MariaDB](https://mariadb.org/) database within your cluster to store our data on [Scaleway Block Storage](https://www.scaleway.com/en/object-storage/). You also have access to the Load Balancer that was created to access your WordPress using the external IP displayed. 10. Access your WordPress application by entering the external IP provided in a web browser. The WordPress website displays in your browser. - + * When updating the configuration of your application, you may run into some errors returned by the API. Read these errors carefully, as they contain the instructions you need to solve them.
diff --git a/tutorials/deploy-wordpress-managed-database-mysql8/index.mdx b/tutorials/deploy-wordpress-managed-database-mysql8/index.mdx index ff634a2920..fddd92e8dc 100644 --- a/tutorials/deploy-wordpress-managed-database-mysql8/index.mdx +++ b/tutorials/deploy-wordpress-managed-database-mysql8/index.mdx @@ -13,6 +13,15 @@ dates: validation: 2025-03-25 posted: 2020-06-22 --- +import image from './assets/scaleway-db_list.webp' +import image2 from './assets/scaleway-new_db_1.webp' +import image3 from './assets/scaleway-new_db_2.webp' +import image4 from './assets/scaleway-db_allowed_ips.webp' +import image5 from './assets/scaleway-managed_database_wp_config.webp' +import image6 from './assets/scaleway-wp_install_1.webp' +import image7 from './assets/scaleway-wp_install_2.webp' +import image8 from './assets/scaleway-wp_install_3.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -33,11 +42,11 @@ With its customizable themes and extensive plugin ecosystem, WordPress provides ## Preparing the managed database 1. Go to the [Database section](https://console.scaleway.com/rdb/instances) of your Scaleway console and choose your Database Instance from the list: - + 2. Click the **Managed Databases** tab. A list of your existing databases displays. Click **+ Create Database** to create a new database: - + 3. Enter a name for your new database (for example, `wordpress`) and confirm by clicking on **Create Database**: - + ### Securing the managed database @@ -46,7 +55,7 @@ With its customizable themes and extensive plugin ecosystem, WordPress provides
1. Click the **Allowed IPs** tab to see the list of allowed IPs: - + 2. Click **Delete** to delete the default rule (`0.0.0.0/0 Allow All`). 3. Click **Add IP** and enter the IP of your Instance in CIDR notation (for example: `51.15.123.234/32`). 4. Confirm by clicking the **Add IP** button. @@ -93,7 +102,7 @@ To host WordPress on our Instance, we need to install the required software on i cp wp-config-sample.php wp-config.php ``` 6. Open the configuration file in a text editor (for example, `nano`) and edit the MySQL server configuration as follows: - + Edit the hostname for your Database in the form `database_ip_address:database_port`, for example: `51.15.151.53:6241`. @@ -229,10 +238,10 @@ Now, as WordPress is successfully installed and connections between your users a 1. Open your web browser and type your blog's URL in the address bar of your web browser (for example: `https://blog.example.com`). 2. The WordPress installation wizard displays. Choose the desired language for your blog from the list and click **Continue**: - + 3. Enter the details of your new blog, such as the title, choose a name for the admin user, and set a secret password. Then click **Install WordPress** to complete the installation of your blog: - + 4. You can now log in to your blog and write your first articles, or configure the look and feel by installing additional themes and modules. - + You have installed and configured your blog using a powerful Scaleway Database for MySQL 8, in which all your blog's content and information is stored. For more information on how to customize your WordPress installation, refer to the official [WordPress developer documentation](https://developer.wordpress.org/). \ No newline at end of file diff --git a/tutorials/discourse-forum/index.mdx b/tutorials/discourse-forum/index.mdx index b093d88882..690c1b2de8 100644 --- a/tutorials/discourse-forum/index.mdx +++ b/tutorials/discourse-forum/index.mdx @@ -13,6 +13,11 @@ dates: validation: 2025-03-19 posted: 2020-04-21 --- +import image from './assets/scaleway-discourse01.webp' +import image2 from './assets/scaleway-discourse02.webp' +import image3 from './assets/scaleway-discourse04.webp' +import image4 from './assets/scaleway-discourse05.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -81,14 +86,14 @@ For those looking to set up Discourse, using the official [Docker image](https:/ ## Configuring the admin user 1. Once the installation is complete, open your web browser and go to your discourse subdomain (i.e. `https://discourse.example.com`). The configuration wizard displays. Click **Register** to create the first (admin) user: - + 2. Enter an identifier and a secret password for the new user. Make sure that your email address is valid, as you will receive a confirmation link in this mailbox. Click **Register** to continue: - + 3. Check your email inbox, click the link to confirm your email address, and finish the creation of the admin user. ## Configuring Discourse 1. Once you have validated your email address, the Discourse configuration wizard displays. Choose the language for the application and click **Next**: - + 2. Complete the wizard to customize your community to your needs. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/django-ubuntu-focal-fossa/index.mdx b/tutorials/django-ubuntu-focal-fossa/index.mdx index 27bd242a4d..68c2701179 100644 --- a/tutorials/django-ubuntu-focal-fossa/index.mdx +++ b/tutorials/django-ubuntu-focal-fossa/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-03-27 posted: 2018-10-29 --- +import image from './assets/scaleway-django_installed.webp' +import image2 from './assets/scaleway-django_admin.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -215,10 +218,10 @@ With Django installed, we can now start to create our project and test it on you python manage.py runserver your_server_ip:8000 ``` 2. Visit your server's IP address followed by :8000 in your web browser `http://your_internal_server_ip:8000` which should display: - + 3. Add `/admin/` to the end of your URL. The login page displays. 4. Enter your username and password. The admin page displays. - + The Django project you have created provides the structural basis for designing a more complete website. Check out the Django documentation for more information about how to build your applications and customize your website. diff --git a/tutorials/docker-instantapp/index.mdx b/tutorials/docker-instantapp/index.mdx index 0e596e3970..c72c452ef1 100644 --- a/tutorials/docker-instantapp/index.mdx +++ b/tutorials/docker-instantapp/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-07-02 posted: 2019-05-13 --- +import image from './assets/scaleway-docker_app_running.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -151,7 +153,7 @@ The message displays the information that the application is running on port `80 Remember, this is the internal port of the container. To reach the application, type `http://your_instances_ip:4000` in the address bar of your browser: - + The application displays the internal hostname of the container and retrieves the word "World" from the environment variable that was set in the Dockerfile. diff --git a/tutorials/encode-videos-using-serverless-jobs/index.mdx b/tutorials/encode-videos-using-serverless-jobs/index.mdx index 9209852849..5b25f50623 100644 --- a/tutorials/encode-videos-using-serverless-jobs/index.mdx +++ b/tutorials/encode-videos-using-serverless-jobs/index.mdx @@ -14,6 +14,10 @@ dates: validation: 2025-06-09 posted: 2024-05-15 --- +import image from './assets/scaleway-encoding_job_image.webp' +import image2 from './assets/scaleway-encoding_job_env.webp' +import image3 from './assets/scaleway-encoding_run_env.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -88,7 +92,7 @@ The initial step involves defining a Docker image for interacting with the Objec 2. Select the **Scaleway** Container Registry and your Container Registry namespace from the drop-down list, then select the image from the previous section. - + 3. Choose your job name, description, and region. In the **Resources** section, pick a reasonable amount of resources. @@ -100,7 +104,7 @@ The initial step involves defining a Docker image for interacting with the Objec - `JOB_S3_ACCESS_KEY` is your API access key. - `JOB_S3_SECRET_KEY` is your API secret key. - + 5. Leave the other sections empty, then click `Create job`. @@ -116,7 +120,7 @@ Ensure that your Object Storage bucket contains at least one video that can be e - `JOB_OUTPUT_PATH` is the folder containing the encoded video that will be uploaded, including your Object Storage bucket name. - `JOB_OUTPUT_FILENAME` is the file name of the encoded video that will be uploaded. - + 4. Click **Run job**. diff --git a/tutorials/export-audit-trail-to-datadog/index.mdx b/tutorials/export-audit-trail-to-datadog/index.mdx index 408013b0db..91188629db 100644 --- a/tutorials/export-audit-trail-to-datadog/index.mdx +++ b/tutorials/export-audit-trail-to-datadog/index.mdx @@ -13,6 +13,8 @@ dates: validation: 2025-02-10 posted: 2025-02-10 --- +import image from './assets/scaleway-adt-logs-datadog.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -175,4 +177,4 @@ Make sure that you replace: Feb 07 15:34:30 scw-beautiful-zhukovsky otelcol-audit-trail[1723]: 2025-02-07T15:34:30.687Z info scwaudittrail@v0.1.0/receiver.go:80 Polling Audit Trail logs {"kind": "receiver", "name": "scwaudittrail", "data_type": "logs"} ``` 6. Optionally, log in to your Datadog account and click **Logs** in the left hand side menu. Your logs should display. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/first-steps-linux-command-line/index.mdx b/tutorials/first-steps-linux-command-line/index.mdx index 21b77422b8..bae3df606d 100644 --- a/tutorials/first-steps-linux-command-line/index.mdx +++ b/tutorials/first-steps-linux-command-line/index.mdx @@ -14,6 +14,10 @@ dates: validation: 2025-06-02 posted: 2023-11-16 --- +import image from './assets/scaleway-win.webp' +import image2 from './assets/scaleway-terminal.webp' +import image3 from './assets/scaleway-nano.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -21,13 +25,13 @@ This tutorial shows you how to get started with the Linux command line (also kno You may be used to using a **G**raphical **U**ser **I**nterface (**GUI**) for your machine, such as Windows or MacOS. These GUIs make it easy to do everything visually, with clicks of your mouse to open, and close programs and complete thousands of different tasks. - + However, when you provision a virtual or remote machine such as a [Scaleway Instance](/instances/how-to/create-an-instance/), [Dedibox](/dedibox/how-to/order-a-server/), or [Elastic Metal server](/elastic-metal/how-to/create-server/) it is more usual to use the text-based command line, rather than a GUI, to operate the machine. While GUIs are user-friendly, the command line is much more powerful, uses fewer of the machine's resources (leaving more compute power to be used elsewhere), is less laggy, and more efficient. Even if you are using a GUI on your own local machine, you can also choose to use the command line by opening a **terminal** application in your GUI, to start carrying actions via the command line instead of the graphical interface. - + When you are faced with operating a machine via the command line for the first time, this can be confusing and frustrating. This document aims to show you some of the basic principles of using a command line instead of a graphical interface. We will guide you through a series of hands-on exercises to practice some of the main commands you need to get started. @@ -200,7 +204,7 @@ There are many different programs you can use to edit text in the command line o Nano opens the file and you see a screen like the following: - + The information at the bottom tells you the keyboard shortcuts for different actions within the file. Depending on your keyboard, a command such as `CTRL + X` will exit the file and take you back to the command line, whereas you can use `CTRL + K` to cut text, etc. diff --git a/tutorials/flask/index.mdx b/tutorials/flask/index.mdx index c7da4686bf..b293e34ba0 100644 --- a/tutorials/flask/index.mdx +++ b/tutorials/flask/index.mdx @@ -12,6 +12,11 @@ dates: validation: 2025-04-08 posted: 2018-08-23 --- +import image from './assets/scaleway-FlaskApp.webp' +import image2 from './assets/scaleway-FlaskHello.webp' +import image3 from './assets/scaleway-FlaskHome.webp' +import image4 from './assets/scaleway-FlaskQuote.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -108,7 +113,7 @@ Package Index. * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit) ``` 7. Open your web browser and type the `server_ip:port`. It should display: - + If you run the server you will notice that the server is only accessible from your own computer, not from any other in the network. This is the default because in debugging mode a user of the application can execute arbitrary Python code on your computer. If you have the debugger disabled or trust the users on your network, you can make the server publicly available simply by adding --host=0.0.0.0 to the command line or editing your `app.py` to match `app.run(host='0.0.0.0')`` This tells your operating system to listen on all public IPs. @@ -166,7 +171,7 @@ We will create several URL routes: Each route should display what is defined in the `app.py` above, for instance, http://server_ip:5000/hello displays: - + ## Styling Flask pages @@ -244,7 +249,7 @@ if __name__ == "__main__": the application should display - + ## Passing variables @@ -302,6 +307,6 @@ Let's try and display random Scaleway catchphrases instead of always the same on python3 hello.py ``` - + To learn more about Flask, refer to the official [Flask documentation](http://flask.pocoo.org/). diff --git a/tutorials/focalboard-project-management/index.mdx b/tutorials/focalboard-project-management/index.mdx index 86bc920d5b..c2b8ddeff6 100644 --- a/tutorials/focalboard-project-management/index.mdx +++ b/tutorials/focalboard-project-management/index.mdx @@ -13,6 +13,8 @@ dates: validation: 2025-03-06 posted: 2023-02-22 --- +import image from './assets/scaleway-focalboard-splash.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -214,6 +216,6 @@ To avoid the Focalboard application being directly reachable via plain HTTP on p ``` Your Focalboard Instance is now ready. You can open a web browser on your local computer and point it to your Focalboard domain — the Login screen displays. Click **Create an account** to create your first account and start using your Instance. - + For more information about using your new Focalboard Instance, follow the [official Focalboard documentation](https://www.focalboard.com/guide/user/). \ No newline at end of file diff --git a/tutorials/foreman-puppet/index.mdx b/tutorials/foreman-puppet/index.mdx index a0050e4940..e5dc06c66d 100644 --- a/tutorials/foreman-puppet/index.mdx +++ b/tutorials/foreman-puppet/index.mdx @@ -12,6 +12,17 @@ dates: validation: 2025-04-22 posted: 2018-08-06 --- +import image from './assets/scaleway-foreman_login.webp' +import image2 from './assets/scaleway-dashboard.webp' +import image3 from './assets/scaleway-configure_classes.webp' +import image4 from './assets/scaleway-import.webp' +import image5 from './assets/scaleway-ntp_prod.webp' +import image6 from './assets/scaleway-ntp_servers.webp' +import image7 from './assets/scaleway-hosts.webp' +import image8 from './assets/scaleway-ntp_add.webp' +import image9 from './assets/scaleway-ntp_included.webp' +import image10 from './assets/scaleway-hosts_dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -138,7 +149,7 @@ You can log in to Foreman using the credentials that were returned once it was i - Username: admin - Password: random - + ## Foreman dashboard @@ -146,7 +157,7 @@ After login, the Foreman dashboard displays an overview of your Puppet environme A summary of "Host Configuration Status" displays the amount of Puppet agent nodes and their statuses. Upon first connection, one single Instance should be visible in the "good host" section. - + ## Changing the admin password @@ -178,13 +189,13 @@ Puppet requires accurate time-keeping, therefore the [NTP service](https://en.wi The module requires to be added to Foreman before being usable. 2. When connected to the Foreman web UI, click **Configure**> **Puppet**> **Classes**: - + 3. Click the `Import environments from foreman.example.com` button. - + This imports the environment and displays the **Changed environments** panel. 4. Tick the NTP checkbox next to the item and click **Update** to import the NTP module. - + ## Overriding default NTP pool @@ -193,7 +204,7 @@ Update the settings and configure the NTP module to use the [French NTP pool](ht 1. In the **Puppet Classes** screen, click **ntp** class to edit it. 2. Click the **Smart Class Parameter** tab. 3. Scroll down to find the **servers** item in the left sidebar, and select it. - + 4. Tick the **Override** checkbox. In the **Parameter type** menu, choose **array** and change the **Default value** from the default NTP pool to the desired one: ``` ["0.fr.pool.ntp.org","1.fr.pool.ntp.org","2.fr.pool.ntp.org","3.fr.pool.ntp.org"] @@ -206,20 +217,20 @@ Configure the NTP module to manage NTP on the Foreman host. 1. Click **Hosts** on the side menu and select **All hosts**. 2. Click **Edit** on the far right of your Foreman host. - + 3. Click the **Puppet Classes** tab. Within the Available Classes section, click the ntp class, then click the plus sign next to "ntp": - + The NTP class is being moved to the Included Classes section. The next time the Puppet agent checks in, it will have this module applied to it. - + 4. Click **Submit** to activate the configuration. ## Viewing Puppet configuration After editing Foreman host's configuration, a redirection to Foreman host's summary page applies. - + Click the **YAML** button, to see the information provided to Puppet when an agent node checks in. diff --git a/tutorials/get-started-crossplane-kubernetes/index.mdx b/tutorials/get-started-crossplane-kubernetes/index.mdx index 39966f3e76..95ede4e7cf 100644 --- a/tutorials/get-started-crossplane-kubernetes/index.mdx +++ b/tutorials/get-started-crossplane-kubernetes/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-06-02 posted: 2023-05-05 --- +import image from './assets/scaleway-kubeconfig-terminal-screen.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -74,7 +76,7 @@ Run the following `up uxp install` command to install the latest stable version 3. Paste the content of your Kubeconfig file and save the changes by following the information displayed on your terminal. Here is an example on a Mac terminal screen. - + 4. Run the following command to install the provider into the Kubernetes cluster using the previously set Kubernetes configuration file. ``` diff --git a/tutorials/get-started-deploy-kapsule/index.mdx b/tutorials/get-started-deploy-kapsule/index.mdx index 5ddabe4795..b9eb60163b 100644 --- a/tutorials/get-started-deploy-kapsule/index.mdx +++ b/tutorials/get-started-deploy-kapsule/index.mdx @@ -12,6 +12,12 @@ dates: validation: 2025-05-02 posted: 2022-05-05 --- +import image from './assets/scaleway-cluster.webp' +import image2 from './assets/scaleway-worker-node-full-kubelet.webp' +import image3 from './assets/scaleway-control-plane.webp' +import image4 from './assets/scaleway-pool.webp' +import image5 from './assets/scaleway-kubectl.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -45,14 +51,14 @@ Before starting the practical steps of this tutorial, we review a few key Kubern * **Cluster**: If you're running Kubernetes, you're running a cluster. A cluster is a set of machines, called nodes, running containerized applications managed by Kubernetes. A cluster has several worker nodes and at least one control plane. Cluster: - + * **Node**: A node may be a virtual or physical machine. In the case of Scaleway Kubernetes Kapsule, a node is an [Instance](/instances/concepts/#instance). * **Worker node**: Each worker node runs one or more containerized applications, which are grouped into pods. Each worker node is managed by the control plane and contains the services necessary to run pods. Worker node: - + * **Pod**: A pod is a bundle of containers working closely together. Containers grouped in pods might share resources such as storage and networking. @@ -61,16 +67,16 @@ Before starting the practical steps of this tutorial, we review a few key Kubern * **Control plane**: The control plane, previously known as the master node, controls and manages the worker nodes and their pods in the cluster. Scaleway's Kubernetes Kapsule takes care of all management of the control plane for you. The control plane consists of components such as the kube API server, which acts as the control plane's front end, the kube scheduler, which assigns pods to nodes, etcd, which is a consistent and highly-available key value store to back cluster data, and more. Control plane: - + * **Pool**: A pool is a group of worker nodes within the cluster that all have the same configuration. In the case of Scaleway Kubernetes Kapsule, all the nodes in the same pool will be of the same Instance type. You can add or remove pools of nodes to increase/decrease the computational power of your cluster. Pool: - + * **kubectl**: `kubectl` is the command line interface for running commands against Kubernetes clusters. You can use `kubectl` to connect to and manage your clusters from the command line. - + * **Managed Kubernetes**: Managed Kubernetes is when third-party providers take over some of the responsibility for setting up and operating Kubernetes. Scaleway has two managed Kubernetes products: [Kubernetes Kapsule](https://www.scaleway.com/en/kubernetes-kapsule/) and [Kubernetes Kosmos](https://www.scaleway.com/en/kubernetes-kosmos/). Kapsule is our classic Kubernetes offer, where all nodes and their pods in the cluster are managed by Scaleway and hosted on Scaleway Instances. Kosmos allows you to have multi-cloud clusters, with pods hosted on nodes from different cloud providers. diff --git a/tutorials/get-started-kubernetes-loadbalancer/index.mdx b/tutorials/get-started-kubernetes-loadbalancer/index.mdx index 967dad82b1..11a6fcfad9 100644 --- a/tutorials/get-started-kubernetes-loadbalancer/index.mdx +++ b/tutorials/get-started-kubernetes-loadbalancer/index.mdx @@ -12,6 +12,11 @@ dates: validation: 2025-04-08 posted: 2023-09-19 --- +import image from './assets/scaleway-cluster.webp' +import image2 from './assets/scaleway-nodeport.webp' +import image3 from './assets/scaleway-loadbalancer-service.webp' +import image4 from './assets/scaleway-load-balancer.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -40,7 +45,7 @@ The next and final video in this series will look at the topic of persistent sto In our previous tutorials, we created a [Kubernetes Kapsule](https://www.scaleway.com/en/kubernetes-kapsule/) and deployed the containerized [whoami](https://github.com/jwilder/whoami) application to it. This is what our cluster looked like at the end of the last tutorial: - + ## Why do we need a Load Balancer? @@ -48,7 +53,7 @@ By default, Kubernetes clusters are not exposed to the internet. This means that In the previous tutorial, we solved this problem by creating a **NodePort** Service for our cluster. NodePort is a Kubernetes service that opens a port on each node that contains pods for the specified deployment. It then forwards any external traffic received on that port to the right pods. This allowed us to go to our node’s external IP address in a browser (specifying the open port), and we were served our web application. - + As mentioned, NodePort is a **Service**. It is important to differentiate between Services and Deployments in Kubernetes. Both of these are Kubernetes abstractions: @@ -63,7 +68,7 @@ LoadBalancer is also a Kubernetes Service just like NodePort, and it is the stan The LoadBalancer Service within your cluster creates an external Load Balancer. This external Load Balancer has a single IP address that forwards all traffic to the LoadBalancer Service within your cluster, which then takes care of forwarding it to the right pods. - + LoadBalancer supports multiple protocols and multiple ports per service and is much more secure than NodePort. It provides all those things that are important and valued when it comes to Cloud Native technology: predictability, scalability, and high availability. @@ -134,7 +139,7 @@ It is not possible to create the external Scaleway Load Balancer yourself via th 2. Select **Network** > **Load Balancers** from the side menu. A list of your Scaleway Load Balancers displays. You should see one with the tags `kapsule` and `cluster=xxxx`. This is the Load Balancer created by the Cloud Controller Manager of your Kubernetes Kapsule cluster when you created your LoadBalancer Service in the previous step. 3. Click the LoadBalancer to view its details. - + The Load Balancer is auto-managed by Kapsule, so no changes can be made here directly. In the `IPv4` field, the Load Balancer's IP address displays. diff --git a/tutorials/get-started-kubernetes-storage/index.mdx b/tutorials/get-started-kubernetes-storage/index.mdx index ebde55302d..65d4bfe67e 100644 --- a/tutorials/get-started-kubernetes-storage/index.mdx +++ b/tutorials/get-started-kubernetes-storage/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-02-11 posted: 2024-01-29 --- +import image from './assets/scaleway-persistent-volume-claim.webp' +import image2 from './assets/scaleway-stateful-set.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -77,13 +80,13 @@ Cloud providers also provide a **C**ontainer **S**torage **I**nterface (CSI) for To provision persistent Block Storage resources in this tutorial, we will use a **PersistentVolumeClaim**. This is a Kubernetes object, which requests and claims a **PersistentVolume** resource. The PersistentVolumeClaim object requests a specific size, access mode, and StorageClass for the PersistentVolume, meaning we can describe what we want without needing to worry about how it is provisioned. - + In our [previous tutorial](/tutorials/get-started-deploy-kapsule/) we used a **Deployment** object to deploy a stateless application. In this tutorial, we will use a **StatefulSet** object to deploy a stateful application. Both Deployments and StatefulSets manage the deployment and scaling of a set of pods with identical replications of a containerized application. But StatefulSets can also provision and manage persistent storage for their pods, via PersistentVolumeClaims. What's more, to ensure data consistency and synchronicity as pods read and write to storage, the pods of a StatefulSet have sticky, persistent identities as shown below: - + ## Step 1: Create StatefulSet from YAML manifest diff --git a/tutorials/get-started-python/index.mdx b/tutorials/get-started-python/index.mdx index fe946c9639..2d33579a03 100644 --- a/tutorials/get-started-python/index.mdx +++ b/tutorials/get-started-python/index.mdx @@ -13,6 +13,8 @@ dates: validation: 2025-02-18 posted: 2023-01-25 --- +import image from './assets/scaleway-terminal.webp' + This tutorial shows you how to get started with the programming language Python. Python is a great choice if you have never coded before: it is free, it reads like real English, and it is fast and simple to learn the basics. What's more, Python often figures in the top three of the most in-demand languages by recruiters. @@ -47,7 +49,7 @@ We will be coding from the **terminal**, also referred to as the **command line* 1. Open the **terminal** on your computer. - The terminal application usually has an icon similar to this: + The terminal application usually has an icon similar to this: diff --git a/tutorials/glpi/index.mdx b/tutorials/glpi/index.mdx index 1fc466453a..1ba6104378 100644 --- a/tutorials/glpi/index.mdx +++ b/tutorials/glpi/index.mdx @@ -13,6 +13,12 @@ dates: validation: 2025-04-08 posted: 2020-08-13 --- +import image from './assets/scaleway-agree-to-terms.webp' +import image2 from './assets/scaleway-install.webp' +import image3 from './assets/scaleway-db-setup.webp' +import image4 from './assets/scaleway-test-db-connection.webp' +import image5 from './assets/scaleway-dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -243,9 +249,9 @@ In this tutorial, we use [certbot](https://certbot.eff.org/instructions). 1. Access your GLPI interface via browser using your domain name or IP address. The GLPI setup wizard displays. 2. Select the language and click **OK**. The GLPI license terms display. 3. Read the license terms and check **I have READ and ACCEPT the terms of the license written above** to proceed. - + 4. Click **Install** to begin the installation, - + The wizard runs a compatibility check and a list of tests done on the environment displays. 5. Click **Continue** to proceed. @@ -254,10 +260,10 @@ In this tutorial, we use [certbot](https://certbot.eff.org/instructions). - **SQL User:** `db-username` (The username previously created for your Database) - **SQL Password:** `db-password` (The password previously created for your Database) - + 7. Click **Continue** to proceed. 8. Select a database and click **Continue**: - + The initialization of the database might take a few minutes. 9. Click **Continue** again. @@ -268,7 +274,7 @@ In this tutorial, we use [certbot](https://certbot.eff.org/instructions). The GLPI dashboard displays. - + For security reasons, GLPI recommends you to change the password for your default users and to remove the `install/install.php` file. diff --git a/tutorials/gpu-super-resolution/index.mdx b/tutorials/gpu-super-resolution/index.mdx index 626ddb1bf6..20552bfc32 100644 --- a/tutorials/gpu-super-resolution/index.mdx +++ b/tutorials/gpu-super-resolution/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-04-08 posted: 2020-09-24 --- +import image from './assets/scaleway-plot.webp' +import image2 from './assets/scaleway-input-output.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -308,11 +311,11 @@ plt.show() In the plot, you can see the train loss and test loss as a function of training epochs. - + In the image below you can see the results of the Super Resolution: - + - Upper row: low-resolution inputs - Middle row: model's super-resolved outputs diff --git a/tutorials/hadoop/index.mdx b/tutorials/hadoop/index.mdx index 1ba76e1a30..c4c18c0a6e 100644 --- a/tutorials/hadoop/index.mdx +++ b/tutorials/hadoop/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-04-22 posted: 2018-08-29 --- +import image from './assets/scaleway-apacheDL.webp' +import image2 from './assets/scaleway-checksumDL.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -68,7 +71,7 @@ For more information, refer to the [official Apache Hadoop documentation.](http: 1. Visit the [Apache Hadoop Releases page](http://hadoop.apache.org/releases.html) to select the most recent stable release. We will install Hadoop version 3.4.1. 2. Copy the link to the release binary. - + 3. Use `wget` to fetch it: ``` wget https://dlcdn.apache.org/hadoop/common/hadoop-3.4.1/hadoop-3.4.1.tar.gz @@ -76,7 +79,7 @@ For more information, refer to the [official Apache Hadoop documentation.](http: To make sure that the file we downloaded has not been altered, we'll do a quick check using [SHA-256](https://en.wikipedia.org/wiki/SHA-2). Return to the releases page, then click and copy the link to the checksum file for the release binary you downloaded: - + 4. Copy the link displayed in the browser and use `wget` on our server to download the file. ``` wget https://dlcdn.apache.org/hadoop/common/hadoop-3.4.1/hadoop-3.4.1.tar.gz.sha512 diff --git a/tutorials/hestiacp/index.mdx b/tutorials/hestiacp/index.mdx index cf2cecde66..f71c664652 100644 --- a/tutorials/hestiacp/index.mdx +++ b/tutorials/hestiacp/index.mdx @@ -11,6 +11,12 @@ dates: validation: 2025-04-22 posted: 2020-07-07 --- +import image from './assets/scaleway-hestiacp_login.webp' +import image2 from './assets/scaleway-hestiacp_login.webp' +import image3 from './assets/scaleway-hestiacp_loginas.webp' +import image4 from './assets/scaleway-hestiacp_add_domain.webp' +import image5 from './assets/scaleway-hestiacp_mail_cred.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -124,27 +130,27 @@ In this tutorial, you will learn how to install and configure HestiaCP on Ubuntu You can create additional user accounts to allow your users to manage their services by themselves using the Hestia control panel. 1. Open a web browser on your computer and point it to your HestiaCP domain (for example: `http://hestiacp.example.com:8083`). The Hestia control panel login screen displays: - + 2. Enter the login **admin** and the password displayed during the installation. 1. Open a web browser on your computer and point it to your HestiaCP domain (for example: `http://hestiacp.example.com:8083`). The Hestia control panel login screen displays: - + 2. Enter the login **admin** and the password displayed during the installation. alt="" /> 4. Click **Add User** to create a new user account. 5. Enter the credentials of the user account, such as name, email address, and password. 6. Click **Create User** to create the new account. Once created click **Login as ...** to log into the newly created account: - + ## Adding a domain name 1. Click **Add Web Domain** on the Hestia dashboard. 2. Enter the domain name in the form and tick the boxes if you want to use the domain name for e-mails and if Hestia shall manage the DNS zone of it. Click **Advanced options** to configure advanced settings such as the proxy configuration, web statistics, and TLS certificates. - + 3. Click **Save** to add the domain name to the configuration. ## Creating e-mail accounts 1. From the Hestia dashboard, click **Mail** to view a list of your mail domains. Click the domain name you want to configure. 2. The list of e-mail accounts displays. Click **Add Mail account**, then enter the details for the new account. The connection parameters of the mail account are displayed on the right-hand side of the screen. Optionally enter an e-mail address to send the credentials to, post account creation. - + 3. Click **Save** to confirm the creation of the new mailbox. ## Going further diff --git a/tutorials/host-github-runner/index.mdx b/tutorials/host-github-runner/index.mdx index 7fac46e552..b7d55e1c96 100644 --- a/tutorials/host-github-runner/index.mdx +++ b/tutorials/host-github-runner/index.mdx @@ -12,6 +12,11 @@ dates: validation: 2025-04-08 posted: 2018-04-06 --- +import image from './assets/scaleway-github-actions-menu.webp' +import image2 from './assets/scaleway-github-settings-menu.webp' +import image3 from './assets/scaleway-add-github-runner.webp' +import image4 from './assets/scaleway-github-runner-active.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -38,7 +43,7 @@ In this guide, you will learn how to configure a GitHub Actions runner on a Scal 1. Log into your [GitHub](https://github.com) account and select the repository in which you want to add GitHub Actions. 2. Click the **Actions** tab in your repository. A list of available workflows for your project displays. - + 3. Select the workflow that corresponds to your project and click **Set up this workflow**. You can either create a workflow from scratch or use one of the templates suggested. 4. Edit the workflow according to your requirements. For more information about GitHub Actions, refer to the [product documentation](https://docs.github.com/en/actions). Once configured, save the workflow. @@ -73,10 +78,10 @@ In this guide, you will learn how to configure a GitHub Actions runner on a Scal ## Adding the runner to your GitHub repository 1. Go back to your GitHub repository and click the **Settings** tab. Then click **Actions** in the side menu. - + 2. Click **Runners** in the Actions section of the side menu. The external runners' overview page displays. 3. Click **Add runner**. - + 4. The runners' configuration instruction displays. Select the OS type of your OS (Linux, X64) and scroll down to the **Configure** section of the page. 5. Copy the configuration information displayed and execute the `config.sh` on your Instance: ```s @@ -101,7 +106,7 @@ In this guide, you will learn how to configure a GitHub Actions runner on a Scal ``` Your self-hosted GitHub runner is now ready and you can check its status from the Runners section of your GitHub repository: - + To run your CI/CD tasks on your self-hosted runner, add this YAML in your workflow file for each job: ```yaml diff --git a/tutorials/install-apache-ansible/index.mdx b/tutorials/install-apache-ansible/index.mdx index 574b6d5c68..2e30b55cb4 100644 --- a/tutorials/install-apache-ansible/index.mdx +++ b/tutorials/install-apache-ansible/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-01-22 posted: 2018-08-02 --- +import image from './assets/scaleway-apache_defaultpage.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -191,7 +193,7 @@ Customize Apache configuration as per your requirements: Once Ansible is fully set up, you can visit your web browser on port 8081 (rather than port 80). In most web browsers, this can be easily achieved by adding :port onto the end of the URL: http://public_ip_address:8081/. - + + You are prompted to enter the [Erlang Node Name](http://erlang.org/doc/reference_manual/distributed.html#nodes) of your server. As the cluster will communicate on the internal Scaleway network, you should use the Instance's internal FQDN for this as follows: 5. Copy the Instance's internal FQDN, which you can find in the Instance's **Overview** page on the Scaleway console under **Private DNS**. - + 6. Return to the installer, and enter `couchdb@` as the CouchDB Erlang node name, ensuring you replace `` with the private DNS address you just copied. - + 7. Set the [Erlang Magic Cookie](http://erlang.org/doc/reference_manual/distributed.html#security). This is a unique identifier to authenticate for your cluster, all nodes must have the same cookie. Make sure you choose a secret cookie. - + 8. Configure the network interfaces on which CouchDB will be bound. To run a cluster it is important to bind it to `0.0.0.0`. - + 9. Enter an admin password of your choice for CouchDB, press enter, re-type the password and press Enter again to continue the installation. 10. Verify that the CouchDB server is running once the installation is complete. ```bash @@ -134,14 +146,14 @@ To protect the web interface of CouchDB from unauthorized access, it is required service nginx reload ``` 6. Access _Project Fauxton_, the configuration interface of CouchDB by going to `http://YOUR_SERVER_IP:4000/_utils/#/setup` in your browser. Log in with the user `admin` and the password that you have set during the installation: - + ## Creating a CouchDB cluster You can easily create a CouchDB cluster from the Fauxton Interface. 1. Click the **Configure a Cluster** button to be redirected to the following form: - + 2. In the top part of the form, enter the credentials for the admin user, the interface on which you want the node to listen, the port, and the total number of nodes in the cluster. 3. In the second part enter the details of each node: - `Remote Host` will be the DNS name of the remote node (`couchdb@`) @@ -155,7 +167,7 @@ You can easily create a CouchDB cluster from the Fauxton Interface. If the cluster is working properly, all tests will be checked: - + ### Creating a new database from the Fauxton interface @@ -164,19 +176,19 @@ You can create a database from the Fauxton interface with the following steps: 1. Click **Managed Databases** in the side menu, then **Create Database** in the top right. 2. Enter a name for the new database. 3. Click **Create**. - + ### Managing a database from the Fauxton interface You can manage a database directly from the Fauxton interface. It provides options to view, edit, and add documents directly from this interface: - + ### Editing a document from the Fauxton interface To edit a document from the Fauxton interface, click the corresponding line to edit the content of the document directly from the web interface: - + ## Using the CouchDB API diff --git a/tutorials/install-docker-ubuntu-bionic/index.mdx b/tutorials/install-docker-ubuntu-bionic/index.mdx index 0b041177d0..16bbaf4af4 100644 --- a/tutorials/install-docker-ubuntu-bionic/index.mdx +++ b/tutorials/install-docker-ubuntu-bionic/index.mdx @@ -13,6 +13,9 @@ dates: validation: 2025-04-08 posted: 2018-07-11 --- +import image from './assets/scaleway-docker-container-run.webp' +import image2 from './assets/scaleway-docker-hello-world.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -286,13 +289,13 @@ docker run -p 4000:80 helloworld You will see a message similar to the following: - + You can notice that the application is running on port `80`. Remember, this is the internal port of your container and can reach the application by typing `http://localhost:4000` in the address bar of your browser: - + The application displays the internal hostname of the container and retrieves the word "World" from the environment variable that you have set in the Dockerfile. diff --git a/tutorials/install-github-actions-runner-mac/index.mdx b/tutorials/install-github-actions-runner-mac/index.mdx index 353c6902a9..3622cfb1d4 100644 --- a/tutorials/install-github-actions-runner-mac/index.mdx +++ b/tutorials/install-github-actions-runner-mac/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-05-19 posted: 2024-01-31 --- +import image from './assets/scaleway-gh-runner-mac-arm64.webp' +import image2 from './assets/scaleway-gh-runner-status-idle.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -84,7 +87,7 @@ softwareupdate --install-rosetta 3. Click **New self-hosted runner** to be redirected to the configuration page. 4. Choose **macOS** as the runner image and **ARM64** as the architecture. 5. Follow the prompted shell commands to authenticate your machine, download the necessary runtime, and set up the runner. Do not start your runner yet. - + After selecting the runner image and architecture, GitHub prompts you to execute a sequence of shell commands. These commands serve to authenticate your machine with your GitHub repository, download the necessary runtime, and set up the runner within your environment. Execute these commands on your Mac mini. @@ -102,7 +105,7 @@ softwareupdate --install-rosetta 7. Execute the `run.sh` script in your runner directory to complete the setup. 8. Verify that the runner is up and listening for jobs in the terminal and check the GitHub repository settings for the runner's association and `Idle` status. - + ## Using the runner in a workflow diff --git a/tutorials/install-mattermost/index.mdx b/tutorials/install-mattermost/index.mdx index a98453e0c7..1e2d59af65 100644 --- a/tutorials/install-mattermost/index.mdx +++ b/tutorials/install-mattermost/index.mdx @@ -13,6 +13,10 @@ dates: validation: 2025-02-18 posted: 2019-01-22 --- +import image from './assets/scaleway-mattermost-login.webp' +import image2 from './assets/scaleway-mattermost-listen-address.webp' +import image3 from './assets/scaleway-mattermost-interface.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -151,11 +155,11 @@ For security reasons, it is recommended to put the application behind a proxy. N ## Setting up Mattermost 1. Connect to your instance by going to `https://your_servers_ip`. The Mattermost login screen will appear. Connect yourself with the user you have created during the initial setup of the application. - + 2. Once logged in click the menu button, then on **System Console** to enter the configuration interface of Mattermost. 3. Click **Configuration** in the general settings section. 4. Configure the **Listen Address** as **127.0.0.1:8065**. - + This prevents direct connections to Mattermost from other machines. 5. Restart the Mattermost service. @@ -163,6 +167,6 @@ For security reasons, it is recommended to put the application behind a proxy. N systemctl restart mattermost.service ``` 6. Reload the Mattermost application in your browser. - + You may configure advanced settings, like email notifications and other customizations of your Mattermost application. For more information, refer to the [official documentation](https://docs.mattermost.com/). \ No newline at end of file diff --git a/tutorials/install-openlitespeed-wordpress/index.mdx b/tutorials/install-openlitespeed-wordpress/index.mdx index 786687d067..1e65a319de 100644 --- a/tutorials/install-openlitespeed-wordpress/index.mdx +++ b/tutorials/install-openlitespeed-wordpress/index.mdx @@ -12,6 +12,23 @@ dates: validation: 2025-01-02 posted: 2019-08-07 --- +import image from './assets/scaleway-ols_demo.webp' +import image2 from './assets/scaleway-ols_login.webp' +import image3 from './assets/scaleway-ols_dashboard.webp' +import image4 from './assets/scaleway-ols_vh.webp' +import image5 from './assets/scaleway-ols_vh_conf.webp' +import image6 from './assets/scaleway-ols_vh_docroot.webp' +import image7 from './assets/scaleway-ols_vh_rewrite.webp' +import image8 from './assets/scaleway-ols_listener.webp' +import image9 from './assets/scaleway-ols_listener_web.webp' +import image10 from './assets/scaleway-ols_listener_add_vh.webp' +import image11 from './assets/scaleway-ols_listener_vhmapping.webp' +import image12 from './assets/scaleway-ols_graceful_restart.webp' +import image13 from './assets/scaleway-ols_wp_lang.webp' +import image14 from './assets/scaleway-ols_wp_lang.webp' +import image15 from './assets/scaleway-ols_wordpress_install.webp' +import image16 from './assets/scaleway-ols_wordpress_dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -91,13 +108,13 @@ The application provides a web-based administration interface, compatibility wit systemctl start lsws ``` 2. A test site is running at `http://instance_ip:8088`. Open the test site in your browser. You can run different demo applications like a [CGI-script](https://en.wikipedia.org/wiki/Common_Gateway_Interface), a check of the installed PHP version, password authentication, file upload, and so on. - + ### Accessing the OpenLiteSpeed administration interface Open the administration interface in your web browser at `https://instance_ip:7080`. - + Log in using the following credentials: @@ -110,7 +127,7 @@ Log in using the following credentials: The administration interface displays. - + The status of OpenLiteSpeed is visible in the interface and you can configure additional settings. @@ -128,26 +145,26 @@ The status of OpenLiteSpeed is visible in the interface and you can configure ad 3. Open the OpenLiteSpeed configuration assistant in a web browser and click **Virtual Hosts** to enter the virtual host configuration. The virtual host list displays. 4. Click **+** to create a new virtual host. 5. Enter the details of the virtual host and click the disk icon: - + - **Virtual Host Name**: A unique identifier for the virtual host, i.e. `WordPress` - **Virtual Host Root**: The root directory of the virtual host, i.e. `$SERVER_ROOT/wordpress.example.com` - **Config File**: The path to the configuration file of the virtual host, i.e. `$SERVER_ROOT/conf/vhosts/wordpress.example.com/vhconf.conf` 6. Click **Click to create** to let OpenLiteSpeed automatically generate a configuration file. As the configuration file is not yet created, OpenLiteSpeed proposes to create a new one. Click the disk icon to save. - + 7. Go back to the virtual host configuration and click the **General** tab to configure the **Document Root** for the virtual host. Click the disk icon to save the configuration once set: - + 8. Click the **Rewrite** tab in the virtual host configuration. Then activate the **Enable Rewrite** and **Auto Load from .htaccess** options and save the configuration: - + ### Creating a listener in OpenLiteSpeed A listener defines the port on which the application launches. To make WordPress available on the standard HTTP port (_Port 80_), a new listener has to be configured in OpenLiteSpeed. 1. Enter the **Listeners** section of the administration panel, then click **+** to configure a new listener: - + 2. Enter the details of the new listener: - + - **Name**: A name for the listener, i.e. `Web` - **IP Address**: Define an IP address to listen on, or select `ANY` to listen on all IP addresses configured on the instance. @@ -158,11 +175,11 @@ A listener defines the port on which the application launches. To make WordPress Once all values are set, save the configuration by clicking on the disk icon. 3. Map the listener to a virtual host and set the domain name by clicking on **+** in the **Virtual Host Mappings** section: - + 4. Choose the Virtual Host from the drop-down list (i.e. `WordPress`) and enter the domain name to use for the virtual host. Once set, click the disk icon to save the configuration: - + 5. Launch a graceful restart of OpenLiteSpeed by clicking on the logo, then on the corresponding button: - + ## Downloading and installing WordPress @@ -180,13 +197,13 @@ A listener defines the port on which the application launches. To make WordPress chown -R nobody:nogroup wordpress ``` 4. Open a web browser and go to `http://instance_ip/wordpress`. The WordPress installer displays. Choose the language for your blog and click **Continue**. WordPress displays some information about the tasks that will be performed by the automatic installer. - + 5. Click **Let's Go** to move forward.4. Open a web browser and go to `http://instance_ip/wordpress`. The WordPress installer displays. Choose the language for your blog and click **Continue**. WordPress displays some information about the tasks that will be performed by the automatic installer. - + 6. Click **Let's Go** to move forward. 7. Enter the details of your blog and click **Install WordPress** to launch the installation: - + 8. Log in to WordPress to begin writing your blog: - + You now have successfully configured a basic setup of OpenLiteSpeed and installed a WordPress blog on it. For more information about OpenLiteSpeed, refer to the [official documentation](https://openlitespeed.org/kb/). \ No newline at end of file diff --git a/tutorials/install-parse-server/index.mdx b/tutorials/install-parse-server/index.mdx index d40f707baf..c013675237 100644 --- a/tutorials/install-parse-server/index.mdx +++ b/tutorials/install-parse-server/index.mdx @@ -13,6 +13,9 @@ dates: validation: 2025-06-19 posted: 2020-11-03 --- +import image from './assets/scaleway-parse_dashboardlogin.webp' +import image2 from './assets/scaleway-parse_dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -330,6 +333,6 @@ Parse server comes with a Dashboard for managing your Parse server applications. ### Accessing the Parse server dashboard 1. Access the Parse server dashboard by visiting the URL `http://your-server-ip:4040`. - + 2. Add the credentials that you entered in the `parse-darshboard-config.json` file. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/install-wireguard/index.mdx b/tutorials/install-wireguard/index.mdx index 0c862bf7c0..a900f0761f 100644 --- a/tutorials/install-wireguard/index.mdx +++ b/tutorials/install-wireguard/index.mdx @@ -12,6 +12,10 @@ dates: validation: 2025-01-02 posted: 2019-03-28 --- +import image from './assets/scaleway-wg-android-home.webp' +import image2 from './assets/scaleway-wg-android-conf.webp' +import image3 from './assets/scaleway-wg-android-conf-peer.webp' + import Requirements from '@macros/iam/requirements.mdx' + 2. Click _GENERATE_ to generate the key pair (copy the public key to use on the server). The rest is like the Linux client configuration, fill in the addresses, DNS servers, and name. Now you will need to add the server as a peer. - + 3. Click _ADD PEER_ and add the public key of the server, the public IP of the server, and the port on which it is listening. If you decide to route all the traffic through the VPN, read the _Important_ section above. - + 4. Add the following to the server's `/etc/wireguard/wg0.conf`: ``` [Peer] diff --git a/tutorials/installation-lemp-ubuntu-bionic/index.mdx b/tutorials/installation-lemp-ubuntu-bionic/index.mdx index e4f6e0aab5..926118c483 100644 --- a/tutorials/installation-lemp-ubuntu-bionic/index.mdx +++ b/tutorials/installation-lemp-ubuntu-bionic/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-01-02 posted: 2018-07-31 --- +import image from './assets/scaleway-lemp-php72.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -164,7 +166,7 @@ Nginx stores the configuration of virtual hosts in server blocks. All available ?> ``` 3. Save the file and point your web browser to `http://example.com/phpinfo.php` (replacing `example.com` with your domain name). When you see an output like the following, it means PHP is set up correctly: - + ## Configuring SSL with Let's Encrypt diff --git a/tutorials/installation-lemp-ubuntu-focal/index.mdx b/tutorials/installation-lemp-ubuntu-focal/index.mdx index f836128b86..95b3909297 100644 --- a/tutorials/installation-lemp-ubuntu-focal/index.mdx +++ b/tutorials/installation-lemp-ubuntu-focal/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-01-02 posted: 2021-12-03 --- +import image from './assets/scaleway-lemp-php72.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -164,7 +166,7 @@ Nginx stores the configuration of virtual hosts in server blocks. All available ?> ``` 3. Save the file and point your web browser to `http://example.com/phpinfo.php` (replacing `example.com` with your domain name). When you see an output like the following, it means PHP is set up correctly: - + ## Configuring TLS/SSL with Let's Encrypt diff --git a/tutorials/jitsi-debian/index.mdx b/tutorials/jitsi-debian/index.mdx index f7e980b08b..77b8145a4e 100644 --- a/tutorials/jitsi-debian/index.mdx +++ b/tutorials/jitsi-debian/index.mdx @@ -13,6 +13,9 @@ dates: posted: 2020-03-16 validation_frequency: 24 --- +import image from './assets/scaleway-jitsi_home_2.webp' +import image2 from './assets/scaleway-jitsi-meet-conf-call-2.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -83,6 +86,6 @@ The tool provides features such as: If the generation of the Let's Encrypt certificate fails, run the following command: `dpkg-reconfigure jitsi-meet-web-config` to reconfigure the package `jitsi-meet-web-config` before relaunching the certificate request. 7. Open a web browser and type the FQDN of your Instance, for example: `https://jitsi.mydomain.tld`. The following screen displays: - + 8. Enter a name for your conference and press `Start meeting` to enter the conference room. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/jitsi-docker/index.mdx b/tutorials/jitsi-docker/index.mdx index cb22a6c887..7f95068f4d 100644 --- a/tutorials/jitsi-docker/index.mdx +++ b/tutorials/jitsi-docker/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-01-30 posted: 2020-03-24 --- +import image from './assets/scaleway-jitsi_login.webp' +import image2 from './assets/scaleway-jitsi-meet-conf-call.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -90,10 +93,10 @@ Jitsi Meet defaults to listening on port 8443 for HTTPS. While HTTP is an option ## Connecting to the Instance 1. Open a web browser on your local computer and access the web UI at `https://:8443`. The Jitsi Meet login screen displays: - + Enter a name for your conference and press `Go` to enter the conference room. It is now possible to share the conference link, set a password, configure the audio and video quality, and more. - + For more information concerning the Jitsi Meet Docker image, refer to the [official Jitsi documentation](https://github.com/jitsi/docker-jitsi-meet). diff --git a/tutorials/jitsi-ubuntu-jammy-jellyfish/index.mdx b/tutorials/jitsi-ubuntu-jammy-jellyfish/index.mdx index 04273c9d62..f558cb6620 100644 --- a/tutorials/jitsi-ubuntu-jammy-jellyfish/index.mdx +++ b/tutorials/jitsi-ubuntu-jammy-jellyfish/index.mdx @@ -13,6 +13,9 @@ dates: validation: 2025-06-19 posted: 2022-11-16 --- +import image from './assets/scaleway-jitsi_home.webp' +import image2 from './assets/scaleway-jitsi-meet-conf-call.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -87,8 +90,8 @@ Jitsi Meet provides users with a complete suite of tools, making virtual meeting - Enter your email address. - Enter your phone number (optional). 7. Open a web browser and type the FQDN of your Instance, for example: `https://jitsi.mydomain.tld`. The following screen displays: - + 8. Enter a name for your conference, and press `Start meeting` to enter the conference room. - + For more information about Jitsi Meet and the advanced configuration of the tool, refer to the [official Jitsi documentation](https://jitsi.github.io/handbook/docs/intro/). \ No newline at end of file diff --git a/tutorials/k8s-gitlab/index.mdx b/tutorials/k8s-gitlab/index.mdx index 3ec1ee9b0c..46feeba42a 100644 --- a/tutorials/k8s-gitlab/index.mdx +++ b/tutorials/k8s-gitlab/index.mdx @@ -13,6 +13,12 @@ dates: validation: 2025-01-02 posted: 2020-06-09 --- +import image from './assets/scaleway-token.webp' +import image2 from './assets/scaleway-token.webp' +import image3 from './assets/scaleway-runnerok.webp' +import image4 from './assets/scaleway-job1.webp' +import image5 from './assets/scaleway-job2.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -78,9 +84,9 @@ In this part of the tutorial we customize the `value.yaml` to fit our needs and Each `gitlab` runner needs a registration token to register on the `gitlab` server. Retrieve the registration token from the GitLab web interface ("Admin Area" > "Runners"): - + - + 2. Open the file in a text editor and update the following fields in `values.yaml`: ```yaml @@ -138,7 +144,7 @@ In this part of the tutorial we customize the `value.yaml` to fit our needs and ``` The command above installs the GitLab Runner Helm chart version 0.68.1 in the `gitlab-runner` namespace. You can check the runner is working in the `gitlab` console ("admin area" > runners): - + ## Running a pipeline in the runner using a test app @@ -165,7 +171,7 @@ To demonstrate that the runner is working, we [create a repository](https://docs - python3 helloworld.py ``` 5. Push the repository and an Ubuntu container is launched. At first `apt` is updated, and `python3` is installed, and then the “hello, world” script is launched in the terminal. - - + + If you want to learn more about running a `gitlab` runner on Kubernetes you can also check the `gitlab-ci` official [documentation](https://docs.gitlab.com/runner/install/kubernetes.html). \ No newline at end of file diff --git a/tutorials/k8s-kapsule-multi-az/index.mdx b/tutorials/k8s-kapsule-multi-az/index.mdx index 6ed658c985..58373b36d2 100644 --- a/tutorials/k8s-kapsule-multi-az/index.mdx +++ b/tutorials/k8s-kapsule-multi-az/index.mdx @@ -14,6 +14,10 @@ dates: validation: 2025-05-05 posted: 2023-04-15 --- +import image from './assets/scaleway-k8s-kapsule-multi-az-1-v2.webp' +import image2 from './assets/scaleway-k8s-kapsule-multi-az-2-v2.webp' +import image3 from './assets/scaleway-k8s-kapsule-multi-az-3-v2.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -35,7 +39,7 @@ This configuration allows the system to withstand failures in one zone by replic Start by creating a multi-AZ cluster on `fr-par` region, in a dedicated VPC and Private Network, with three pools of nodes, one in `fr-par-1`, one in `fr-par-2`, and one in `fr-par-3`, with two nodes each. The steps for achieving this via Terraform/OpenTofu are as follows: - + 1. Create a `main.tf` file that will contain the Terraform/OpenTofu part of this project, and set the required providers and their versions. @@ -182,10 +186,10 @@ A very common pattern is to deploy an ingress controller to externally expose ap In this part, we will deploy an [ingress-nginx](https://github.com/kubernetes/ingress-nginx) in a multi-AZ, production-ready configuration, using the previously created Kapsule cluster. The official Helm for the nginx controller is full-featured, so we will use it through the Terraform/OpenTofu Helm provider. * Healthy cluster - + * Loss of one AZ - + For this section you need, as a prerequisite, a domain managed on the Scaleway "Domains and DNS" service. diff --git a/tutorials/k8s-velero-backup/index.mdx b/tutorials/k8s-velero-backup/index.mdx index d7f40bc3d3..c874a442df 100644 --- a/tutorials/k8s-velero-backup/index.mdx +++ b/tutorials/k8s-velero-backup/index.mdx @@ -13,6 +13,8 @@ dates: validation: 2025-01-02 posted: 2023-06-02 --- +import image from './assets/scaleway-velero-backup-console.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -93,7 +95,7 @@ Velero will be installed on your local PC or Mac. full-backup Completed 0 0 2023-06-02 15:33:45 +0200 CEST 29d default ``` When you go to your Object Storage bucket in the [Scaleway console](https://console.scaleway.com/), you notice the `backup` folder created by Velero: - + You can also automate your backups using scheduled jobs, with execution times defined by cron expressions. ``` diff --git a/tutorials/kubernetes-package-management-helm/index.mdx b/tutorials/kubernetes-package-management-helm/index.mdx index c78efc9881..def676df37 100644 --- a/tutorials/kubernetes-package-management-helm/index.mdx +++ b/tutorials/kubernetes-package-management-helm/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-06-02 posted: 2024-05-23 --- +import image from './assets/scaleway-helm-schema.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -20,7 +22,7 @@ Helm is a package manager for Kubernetes that simplifies the deployment, managem It organizes application resources into a single deployable unit called a *Helm Chart*, which can be versioned, shared, and reused. Helm charts can simplify the setup of common applications, such as databases, web servers, and monitoring tools, by providing a repository of well-maintained and tested configurations. - + Helm provides a lot of advantages to Kubernetes infrastructures, such as: diff --git a/tutorials/large-messages/index.mdx b/tutorials/large-messages/index.mdx index 5b299b7b08..190b80bc00 100644 --- a/tutorials/large-messages/index.mdx +++ b/tutorials/large-messages/index.mdx @@ -14,6 +14,8 @@ dates: validation: 2025-05-19 posted: 2024-01-22 --- +import image from './assets/scaleway-large-messages-architecture.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -35,7 +37,7 @@ You can retrieve the full source code in [this repository](https://github.com/ro ## Architecture - + This tutorial's architecture is very simple, consisting of two main components: diff --git a/tutorials/lb-firewall-haproxy-pfsense/index.mdx b/tutorials/lb-firewall-haproxy-pfsense/index.mdx index ef2b60ba5b..d74c0705bc 100644 --- a/tutorials/lb-firewall-haproxy-pfsense/index.mdx +++ b/tutorials/lb-firewall-haproxy-pfsense/index.mdx @@ -15,6 +15,24 @@ dates: validation_frequency: 18 posted: 2020-03-11 --- +import image from './assets/scaleway-pfsense_install_01.webp' +import image2 from './assets/scaleway-pfsense_install_02.webp' +import image3 from './assets/scaleway-pfsense_install_03.webp' +import image4 from './assets/scaleway-pfsense_install_04.webp' +import image5 from './assets/scaleway-pfsense_install_05.webp' +import image6 from './assets/scaleway-pfsense_install_06.webp' +import image7 from './assets/scaleway-pfsense_install_07.webp' +import image8 from './assets/scaleway-pfsense_install_08.webp' +import image9 from './assets/scaleway-pfsense_welcome.webp' +import image10 from './assets/scaleway-pfsense_setup_01.webp' +import image11 from './assets/scaleway-pfsense_setup_02.webp' +import image12 from './assets/scaleway-pfsense_setup_04.webp' +import image13 from './assets/scaleway-pfsense_setup_05.webp' +import image14 from './assets/scaleway-pfsense_setup_06.webp' +import image15 from './assets/scaleway-pfsense_setup_07.webp' +import image16 from './assets/scaleway-pfsense_firewall_rules.webp' +import image17 from './assets/scaleway-pfsense_configure_tcp_port.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -40,23 +58,23 @@ This tutorial guides you through the installation of pfSense on a [Scaleway Dedi 2. Depending on the type of the KVM-over-IP device, you can either mount a locally downloaded [pfSense ISO Image](https://www.pfsense.org/download/) or mount a virtual media from a [network share](https://virtualmedia.online.net/pfsense/). 3. Boot the server from the ISO file or the virtual CD-ROM drive. 4. The pfSense install wizard displays. Accept the copyright and distribution notice by pressing the **Enter** key on your keyboard: - + 5. The pfSense welcome screen displays. Select **Install** and confirm by pressing **Enter** to launch the setup wizard: - + 6. Choose the keymap for your pfSense installation. By default, the `US` keymap is preselected. Select the desired keymap from the list and confirm by pressing **Enter**: - + 7. Choose the disk to install pfSense on. If your server has more than one disk, choose `ada0` as the installation destination. Press **Enter** to confirm. All data on the disk will be deleted during the installation of pfSense. Make sure to have a backup of data stored on the disk if you re-install your machine. - + 8. Select the partition scheme for the volume. The default option is `MBR`. You can keep this value and confirm by pressing **Enter**: - + 9. The setup wizard starts copying the data from the virtual CD ROM drive to the server's hard disk. This may take a while depending on the connection speed: - + 10. The automatic installation finishes. Choose **Yes** and confirm by pressing **Enter** to open a shell in the newly installed system to run a manual configuration: - + The following steps are important. Skipping them may result in your server getting blocked for DHCPv6 Flood upon reboot. @@ -66,7 +84,7 @@ This tutorial guides you through the installation of pfSense on a [Scaleway Dedi vi /conf.default/config.xml ``` 12. In the configuration file, scroll down to the network configuration section: - + Replace the line `dhcp6` with `` and type `:x` to save the file and exit vi. 13. Type `exit` to leave the shell and confirm to reboot the machine. @@ -75,7 +93,7 @@ This tutorial guides you through the installation of pfSense on a [Scaleway Dedi Once rebooted, the pfSense welcome screen displays: - + 1. Press `1` to assign the network interfaces. 2. The network configuration wizard launches: @@ -109,29 +127,29 @@ Once rebooted, the pfSense welcome screen displays: ### First connection to the web interface 1. Open a web browser and point it to `https://`. The pfSense web interface displays. Log in using the user **admin** and the password **pfsense**: - + pfSense uses a self-signed TLS certificate, and your web browser might display a connection warning that the certificate is not valid. Open the advanced settings in the warning and confirm that you want to proceed to the site. 2. Once logged in, the pfSense setup wizard displays: - + Click **Next** to move forward. 3. In the second step, the wizard proposes different support options. Proceed by clicking on **Next** if you do not need them. 4. Enter general information about the pfSense server. These include the **Hostname** and the **Domain** of the server. Leave **Primary DNS Server** and **Secondary DNS Server** empty and the option **Override DNS** checked. Click **Next** to continue: - + 5. Configure the [NTP Time Server](https://en.wikipedia.org/wiki/Network_Time_Protocol). You can leave the default value and set the **Timezone** to **Europe/Paris**, then click **Next** to continue: - + 6. Set a [strong and secure](https://passwordsgenerator.net/) password, confirm it and click **Next**. - + 7. Setup is now complete. Click **Finish** to exit the wizard and start configuring rules. - + ### Configuring remote access to the web interface 1. Click **Firewall** > **Rules** to display a list of the configured firewall rules: - + You can see the **Anti-Lockout Rule**, which allows the connection to the web interface in the current state of the firewall. This rule will be deleted once the LAN interface is set up. 2. To avoid being locked out from the configuration interface, create a new rule by clicking on **Add**. @@ -152,7 +170,7 @@ Once rebooted, the pfSense welcome screen displays: Save the rule once all settings are configured. 3. Go to **System** > **Advanced** and change the **TCP port** in the **WebConfigurator** settings to `31337` to match the previously configured rules. - + 4. Save the settings by clicking on **Save** at the bottom of the page. ### Configuring the interfaces diff --git a/tutorials/librenms-monitoring/index.mdx b/tutorials/librenms-monitoring/index.mdx index 6662850f86..bf7c84ae57 100644 --- a/tutorials/librenms-monitoring/index.mdx +++ b/tutorials/librenms-monitoring/index.mdx @@ -12,6 +12,14 @@ dates: validation: 2025-01-02 posted: 2019-07-04 --- +import image from './assets/scaleway-librenms_install.webp' +import image2 from './assets/scaleway-librenms_db.webp' +import image3 from './assets/scaleway-librenms_db.webp' +import image4 from './assets/scaleway-librenms_login.webp' +import image5 from './assets/scaleway-librenms_adddevice.webp' +import image6 from './assets/scaleway-librenms_newdevice.webp' +import image7 from './assets/scaleway-librenms_graphs.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -198,21 +206,21 @@ For security reasons, it is recommended to configure HTTPS by following [this tu https://librenms.example.com/install.php ``` - + 2. Fill in the database connection parameters and the password set during database creation: - + 3. Configure a **user** and **password** for LibreNMS and complete the setup.2. Fill in the database connection parameters and the password set during database creation: - -4. Configure a **user** and **password** for LibreNMS and complete the setup. + +4. Configure a **user** and **password** for LibreNMS and complete the setup. ## Adding localhost to LibreNMS Start by adding the local host as the first device to monitor: 1. Once logged in, click **Devices**, then **Add Device** in the pop-up menu: - + 2. Enter the hostname **localhost**, keep **SNMP** on, leave the values for **SNMP version** and **Port Association Mode** as preset. Enter the configured community name in the file `/etc/snmp/snmpd.conf` as the value for **Community**. Once all values are set, click **Add Device** to add the device: - + 3. LibreNMS starts polling the device and different graphs are created, showing the status of the device. ## Adding a remote device to LibreNMS @@ -272,6 +280,6 @@ LibreNMS is capable of monitoring many network devices. To monitor a remote clou 8. Add the device to LibreNMS by clicking on **Devices**, then **Add Device** in the pop-up menu from within the LibreNMS web interface. 9. Enter the hostname of the device, keep **SNMP** on, leave the values for **SNMP version** and **Port Association Mode** as preset. Enter the community name set in the file `/etc/snmp/snmpd.conf` as value for **Community**. Once all values are set, click **Add Device** to add the device. 10. LibreNMS starts polling the device and creating different graphs showing the status of the device: - + For more information about the configuration options of SNMP, refer to the [official documentation](https://manpages.ubuntu.com/manpages/lunar/en/man5/snmpd.conf.5.html). You may also refer to the [official LibreNMS documentation](https://docs.librenms.org/). \ No newline at end of file diff --git a/tutorials/load-overflow-proxmox-and-elastic-metal/index.mdx b/tutorials/load-overflow-proxmox-and-elastic-metal/index.mdx index 206c984360..1da3b27eba 100644 --- a/tutorials/load-overflow-proxmox-and-elastic-metal/index.mdx +++ b/tutorials/load-overflow-proxmox-and-elastic-metal/index.mdx @@ -15,6 +15,10 @@ dates: validation: 2025-05-12 posted: 2019-05-20 --- +import image from './assets/scaleway-px-create-linux-bridge.webp' +import image2 from './assets/scaleway-px-create-vm.webp' +import image3 from './assets/scaleway-px-create-frontend.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -49,7 +53,7 @@ Finally, we can introduce and configure a Load Balancer to evenly distribute tra 1. Log into the Proxmox web interface and select your server in the datacenter view. Then click **Network** in the menu. 2. Click **Create** > **Linux Bridge**. The configuration wizard displays. Enter a private IP for your Elastic Metal server in CIDR format. The **Bridge port** is the name of your primary network interface, followed by a dot and your VLAN-ID. Tick the boxes **Autostart** and **VLAN aware**, then click **Create** to create the bridge. - + 3. Click **Apply configuration** to activate the new configuration. 4. Go to the **Datacenter** view and click **Create Cluster**. 5. Enter a name for the cluster and select your Private Network bridge `vmbr1` as the cluster network. Then click **Create** to launch cluster creation. @@ -70,7 +74,7 @@ Create or clone your virtual machines on both servers of the cluster to distribu Make sure to select the bridge `vmbr1`, automatic MAC address generation, and select DHCP for LXC network configuration. - + To attach the VM to a Scaleway Private Network, follow the instructions for [attaching a custom resource to a Private Network](/vpc/how-to/attach-resources-to-pn), passing the VM's name and MAC address. @@ -79,7 +83,7 @@ Create or clone your virtual machines on both servers of the cluster to distribu 1. Go to the [Load Balancers](https://console.scaleway.com/load-balancer/lbs/) section in the Scaleway console and select the Load Balancer you want to configure. 2. Click the **Frontends** tab, then **+ Add Frontend**. The frontend configuration wizard displays. 3. Enter the following information: - + For the frontend: * A name diff --git a/tutorials/load-testing-vegeta/index.mdx b/tutorials/load-testing-vegeta/index.mdx index a89fd57839..ec1b2a02dd 100644 --- a/tutorials/load-testing-vegeta/index.mdx +++ b/tutorials/load-testing-vegeta/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-03-19 posted: 2019-05-20 --- +import image from './assets/scaleway-vegeta-plot.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -161,7 +163,7 @@ The data collected during each load test is stored in an output file. vegeta plot -title=Attack%20Results attack-5.bin > results.html ``` 3. Open the HTML file in a web browser to view the plot: - + 4. Alternatively, it is also possible to generate the report as JSON output: ``` vegeta report -type=json results.bin diff --git a/tutorials/loriot-lorawan-network-server/index.mdx b/tutorials/loriot-lorawan-network-server/index.mdx index a7cd97fab4..bfd0549206 100644 --- a/tutorials/loriot-lorawan-network-server/index.mdx +++ b/tutorials/loriot-lorawan-network-server/index.mdx @@ -12,6 +12,10 @@ dates: validation: 2025-07-02 posted: 2020-07-02 --- +import image from './assets/scaleway-mqtt_webclient.webp' +import image2 from './assets/scaleway-mqtt_webclient_2.webp' +import image3 from './assets/scaleway-iothub_howto_loriot_grafana.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -72,7 +76,7 @@ It is time to see messages flowing on IoT Hub: - Create another IoT Hub Device, but this time choose the `Allow Insecure` connections setting. Secured connections are not supported over Web Sockets, which the `MQTT Webclient` uses. - On the Device page, click the `MQTT Webclient` button. The client will open and automatically connect. - + - Now subscribe to the LoRaWAN© devices messages: - Click `Add New Topic Subscription` in the `Subscriptions` block @@ -81,7 +85,7 @@ It is time to see messages flowing on IoT Hub: - Use `my-app/+/uplink` as the topic, this will instruct IoT Hub to send you uplink messages from all devices - Click subscribe - + - Your subscription now appears in the `Subscriptions` block and the messages from your LoRaWAN© devices will start showing in the `Messages` block. @@ -98,7 +102,7 @@ You could leverage the power of IoT Hub to build a dashboard to display your dat Your LoRaWAN© devices' data is now backed by a production-grade dashboard. - + --- diff --git a/tutorials/magento-ubuntu/index.mdx b/tutorials/magento-ubuntu/index.mdx index f8d231e145..9641f383c9 100644 --- a/tutorials/magento-ubuntu/index.mdx +++ b/tutorials/magento-ubuntu/index.mdx @@ -14,6 +14,9 @@ dates: validation: 2025-01-02 posted: 2020-06-17 --- +import image from './assets/scaleway-magento_storefront.webp' +import image2 from './assets/scaleway-magento_admin_dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -297,7 +300,7 @@ By default, plain HTTP connections are not encrypted and data is transmitted in ``` 2. Follow the steps prompted by Certbot to obtain your certificate and reconfigure the Apache2 web server. 3. You can now check your storefront by pointing your web browser to your domain name to check everything is working: - + ## Setting up the Magento admin interface @@ -316,6 +319,6 @@ The interface is available on a customized URL, which was displayed during the i php bin/magento module:disable Magento_TwoFactorAuth ``` 3. Log into the admin using the credentials configured during the initial setup of Magento. - + You have successfully installed Magento Open Source on a Scaleway Instance and secured the connection between your users and your e-commerce site using a TLS certificate. You can now continue to customize your online shop and add articles to start selling. For more information, refer to the [Magento official user guides](https://docs.magento.com/user-guide/). \ No newline at end of file diff --git a/tutorials/manage-database-instance-pgadmin4/index.mdx b/tutorials/manage-database-instance-pgadmin4/index.mdx index 4b1a78efcf..004e3ba57d 100644 --- a/tutorials/manage-database-instance-pgadmin4/index.mdx +++ b/tutorials/manage-database-instance-pgadmin4/index.mdx @@ -13,6 +13,13 @@ dates: validation: 2025-01-02 posted: 2019-10-28 --- +import image from './assets/scaleway-pgadmin_login.webp' +import image2 from './assets/scaleway-pgadmin_dashboard.webp' +import image3 from './assets/scaleway-pgadmin_create_general.webp' +import image4 from './assets/scaleway-pgadmin_create_connection.webp' +import image5 from './assets/scaleway-pgadmin_create_ssl.webp' +import image6 from './assets/scaleway-pgadmin_dashboard_connected.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -72,12 +79,12 @@ By default, connections to the application are being made using an insecure HTTP Once installed, proceed to the configuration of pgAdmin with your Scaleway Database Instance. 1. Open your web browser and point it to `http:///pgadmin4/`, or if installed with HTTPS `https:///pgadmin4/`. The pgAdmin login page displays: - + 2. Enter the username and password configured during the installation and click **Login**. 3. The pgAdmin dashboard displays, to connect the application with your Scaleway Database Instance, click **Add New Server**: - + 4. Specify the general information of the Database Instance: - + * **Name:** Enter a name of your choice for the Database Instance * **Server group:** If you are managing multiple Database Instances, you can create server groups to make the management easier. @@ -86,7 +93,7 @@ Once installed, proceed to the configuration of pgAdmin with your Scaleway Datab * **Connect now:** Tick this box to connect to the Instance once the configuration is completed * **Comments:** You may add additional comments to the Instance 5. Click the **Connection** tab of the create server window and enter the connection details of your Database Instance: - + * **Host name/address**: Enter the IP address of your Database Instance, displayed on the database information page of your Instance. * **Port:** Enter the port of your Database Instance. This information is available from the database information page of your Instance. @@ -96,7 +103,7 @@ Once installed, proceed to the configuration of pgAdmin with your Scaleway Datab 6. Click the **SSL** panel and upload the SSL certificate available from the database information page of your [Scaleway console](https://console.scaleway.com/rdb/). By default, pgAdmin will negotiate an SSL connection without checking the CA (this is the PostgreSQL behavior). With this option, we add a layer of security by checking the certificate authority (CA) used to sign the certificate and make sure this is the same as the one on the server. - + * **SSL mode:** Set the SSL mode value to `Verify-CA` to use the certificate issued by Scaleway * **Client certificate:** Keep this value empty @@ -104,7 +111,7 @@ Once installed, proceed to the configuration of pgAdmin with your Scaleway Datab * **Root certificate:** Click `...` to upload the SSL certificate available from your Scaleway console. 7. Once all settings are made, click **Save** to update the configuration of pgAdmin and to establish a connection to your Database Instance. 8. The Dashboard displays and your Database Instance is listed in the servers section of pgAdmin: - + ## Conclusion diff --git a/tutorials/manage-zigbee-devices-with-iot/index.mdx b/tutorials/manage-zigbee-devices-with-iot/index.mdx index fab38a62b7..d6858ecc63 100644 --- a/tutorials/manage-zigbee-devices-with-iot/index.mdx +++ b/tutorials/manage-zigbee-devices-with-iot/index.mdx @@ -12,6 +12,10 @@ dates: validation: 2025-01-13 posted: 2022-12-20 --- +import image from './assets/scaleway-download-hub-certificate.webp' +import image2 from './assets/scaleway-validate-configuration.webp' +import image3 from './assets/scaleway-metrics-observability.webp' + Privacy and security concerns should be at the forefront of any deployment of connected devices used to monitor or automate actions in our physical environment. Zigbee is a recognized protocol to create a mesh network of sensors and actuators in houses and apartments. However, a proprietary gateway is often used to send commands and receive information to and from this network. It results in a trade-off in control over the security level and the automation and monitoring capabilities. This tutorial aims to set the foundation of a fully configurable solution based on the open source [zigbee2mqtt](https://github.com/Koenkk/zigbee2mqtt) software and the IoT Hub managed service from Scaleway. @@ -23,7 +27,7 @@ Privacy and security concerns should be at the forefront of any deployment of co 2. Add a new device to the Hub, with the option "Deny insecure connection" selected. You need to download the device certificate and device private key, as well as the **Device ID**. 3. Download the certificate used to secure the MQTT endpoint in the **Networks** tabs. - + # Installation and configuration of Zigbee2mqtt @@ -57,6 +61,6 @@ Zigbee2MQTT is configured using YAML based `configuration.yaml` file. Modify thi As soon as the configuration is done, you will see some metrics on the Scaleway console. - + Thanks to Scaleway built-in integration, similar metrics to monitor the performance of your IoT Hub are also available on your [Scaleway Observability](/cockpit/) dashboard. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/matomo-analytics/index.mdx b/tutorials/matomo-analytics/index.mdx index 5aa379c64e..e88891fa30 100644 --- a/tutorials/matomo-analytics/index.mdx +++ b/tutorials/matomo-analytics/index.mdx @@ -14,6 +14,11 @@ dates: validation_frequency: 24 hero: assets/scaleway-matomo.webp --- +import image from './assets/scaleway-matomo-setup1.webp' +import image2 from './assets/scaleway-matomo-setup2.webp' +import image3 from './assets/scaleway-matomo-login.webp' +import image4 from './assets/scaleway-matomo-dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -141,7 +146,7 @@ Matomo requires a web server, such as [Nginx](http://nginx.org/), to operate. En ## Running the Matomo web installer 1. Open a web browser and go to `https://matomo.example.com/`. The web installer displays. Click **Next** to go to the second step: - + Matomo launches some automatic checks if all pre-requirements are fulfilled. 2. Click **Next** to continue with the installation, if all prerequisites are met. @@ -159,7 +164,7 @@ Matomo requires a web server, such as [Nginx](http://nginx.org/), to operate. En Matomo verifies the MySQL/MariaDB credentials. If all is in order, the database structure is created automatically, and a success message displays. 4. Click **Next** to continue with the installation: - + 5. Configure a super-user (or admin user) for Matomo. This will be the main user who can configure all settings and add users and sites: Enter the following credentials for your user: @@ -213,12 +218,12 @@ The installation completes. It is possible to anonymize the data tracked by Mato Once the installation is completed, the login screen displays: - + Enter the **super-user** login and the password set in the previous step. The **Matomo Dashboard** displays. If the tracking code is added to the website, the application begins to track users and generates usage statistics over time: - + Matomo is now installed, counting visitors and analyzing their behavior. For more information about the integration of Matomo on different [Content Management Systems (CMS)](https://matomo.org/docs/integration/) and [advanced configuration](https://matomo.org/docs/include-piwik-in-your-project/) of the tool, refer to the [official documentation](https://matomo.org/docs/#configuration). \ No newline at end of file diff --git a/tutorials/migrate-data-minio-client/index.mdx b/tutorials/migrate-data-minio-client/index.mdx index b3582d26c2..536c4fb826 100644 --- a/tutorials/migrate-data-minio-client/index.mdx +++ b/tutorials/migrate-data-minio-client/index.mdx @@ -13,6 +13,8 @@ dates: validation: 2025-03-27 posted: 2019-03-20 --- +import image from './assets/scaleway-mc.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -96,6 +98,6 @@ The [MinIO Client](https://min.io/docs/minio/linux/reference/minio-mc.html) prov The MinIO client displays a status bar during the transfer, allowing to observe the status of the migration: - + For more information about MinIO Client refer to the [official documentation](https://docs.minio.io/docs/minio-client-quickstart-guide.html). \ No newline at end of file diff --git a/tutorials/migrate-databases-instance/index.mdx b/tutorials/migrate-databases-instance/index.mdx index b8d742b3d8..20633a462a 100644 --- a/tutorials/migrate-databases-instance/index.mdx +++ b/tutorials/migrate-databases-instance/index.mdx @@ -13,6 +13,15 @@ dates: validation: 2025-03-06 posted: 2020-09-21 --- +import image from './assets/scaleway-create_database.webp' +import image2 from './assets/scaleway-user_permissions.webp' +import image3 from './assets/scaleway-user_information.webp' +import image4 from './assets/scaleway-db_endpoint.webp' +import image5 from './assets/scaleway-create_mysql.webp' +import image6 from './assets/scaleway-user_permissions.webp' +import image7 from './assets/scaleway-user_information.webp' +import image8 from './assets/scaleway-endpoint_mysql.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -87,19 +96,19 @@ This guide consists of two parts, depending on which database Engine your Instan 2. Select your Database Instance from the list. 3. Click the **Managed Databases** tab, then on **+ Create Database** to create a new database in the instance. 4. Enter the name of the new database and click **Create Database** to confirm the operation: - + 5. Click the **Users** tab to visualize a list of all your database users. To create a new user for your database, click **+ Add user**. 6. Click the **Permissions** tab and grant `All` permissions to your database for the user: - + 7. Click the **User Information** tab and enter the credentials for the new user. Confirm by clicking on **Create a user**: - + ### Importing the database Once you have created both, the destination database and its users, import your data from the SQL file to your Database Instance by using the `psql` command-line tool. 1. Retrieve the database host and port from your Scaleway console. The **Endpoint** information is visible on your Database information page: - + 2. Use the `psql` command-line tool to import your database with the following command: ``` psql --file=.sql --host= --port= --username= --dbname= @@ -150,19 +159,19 @@ Once you have created both, the destination database and its users, import your 2. Select your Database Instance from the list. 3. Click the **Managed Databases** tab, then on **+ Create Database** to create a new database in the instance. 4. Enter the name of the new database and click **Create Database** to confirm the operation: - + 5. Click the **Users** tab to visualize a list of all your database users. To create a new user for your database, click **+ Add user**. 6. Click the **Permissions** tab and grant `All` permissions to your database for the user: - + 7. Click the **User Information** tab and enter the credentials for the new user. Confirm by clicking on **Create a user**: - + ### Importing the database Once you have created both, the destination database and its users, import your data from the SQL file to your Database Instance by using the `psql` command-line tool. 1. Retrieve the database host and port from your Scaleway console. The **Endpoint** information is visible on your Database information page: - + 2. Use the `mysql` command-line tool to import your database with the following command: ```bash mysql -P -h -u -p < .sql diff --git a/tutorials/mist-streaming-server/index.mdx b/tutorials/mist-streaming-server/index.mdx index da60328700..d017bebffe 100644 --- a/tutorials/mist-streaming-server/index.mdx +++ b/tutorials/mist-streaming-server/index.mdx @@ -13,6 +13,17 @@ dates: validation: 2025-01-02 posted: 2020-07-01 --- +import image from './assets/scaleway-mistserver_01.webp' +import image2 from './assets/scaleway-mistserver_02.webp' +import image3 from './assets/scaleway-mistserver_03.webp' +import image4 from './assets/scaleway-mistserver_04.webp' +import image5 from './assets/scaleway-mistserver_05.webp' +import image6 from './assets/scaleway-obs_settings.webp' +import image7 from './assets/scaleway-obs_start_streaming.webp' +import image8 from './assets/scaleway-mistserver_preview.webp' +import image9 from './assets/scaleway-mistserver_preview.webp' +import image10 from './assets/scaleway-mistserver_embed.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -47,17 +58,17 @@ Successfully installed MistServer using systemd. Starting MistServer. 1. Open a web browser and point it to `http://your.instance.ip.address:4242/` (replace `your.instance.ip.address` with the IP of your Instance). The Mist Server configuration interface displays. 2. Enter your desired username, password, and its confirmation. Then click **Create New Account**. - + 3. Click **Enable protocols** to enable all available streaming protocols. - + The MistServer overview page displays. 4. Click **Streams** on the left menu to enter the stream section. - + 5. Click **Create a new stream** to launch the stream creation wizard. - + 6. Enter the details of the new stream and click **Save**. - + - **Stream name:** Enter a name of your choice for the stream, i.e. `mystream`. - **Source:** Enter the source of the stream. You can either stream local files from your Instance. Click **Browse** to select the content. To stream a live stream, enter the IP address of the source in the text box, e.g. `play://51.15.123.231`. @@ -67,7 +78,7 @@ Successfully installed MistServer using systemd. Starting MistServer. 1. Download the latest version of OBS Studio from their [website](https://obsproject.com/download). The Software is available For macOS, Windows, and Linux. 2. Install OBS Studio on your local computer. 3. Configure the streaming server in OBS Studio by clicking on **Settings** -> **Stream**. - + - **Service** Choose `Custom` from the drop-down menu - **Server** Enter the stream URL of your Instance, for example: `rtmp://51.15.123.222/live` @@ -76,9 +87,9 @@ Successfully installed MistServer using systemd. Starting MistServer. Once configured, click **OK** to validate your settings. 4. Add audio and video sources to OBS Studio. For more information on how to add different sources, refer to the official documentation. 5. Click **Start Streaming** in OBS Studio to start the stream. - + 6. Click **Preview** from the **Streams** list in MistServer to visualize a preview version of your stream. - + If required you can test the different stream settings to find the best configuration for your stream. @@ -87,12 +98,12 @@ If required you can test the different stream settings to find the best configur MistServer provides several ways to access your stream, either directly from a dedicated website or by embedding it into your existing site. 1. From the **Streams** list, click **Embed** to display different ways to access your stream: - + The embed code for your stream displays. 2. Use the toggles below the code box to configure the advanced parameters of the player used for your stream: - + Once everything is set, copy the code and paste it into your website. Alternatively, you can use the dedicated HTML page to link to the stream. It will be available at `http://:8080/.html`. diff --git a/tutorials/monitor-k8s-grafana/index.mdx b/tutorials/monitor-k8s-grafana/index.mdx index f3b0fb61c7..c6c16712f7 100644 --- a/tutorials/monitor-k8s-grafana/index.mdx +++ b/tutorials/monitor-k8s-grafana/index.mdx @@ -13,6 +13,18 @@ dates: validation: 2025-01-02 posted: 2020-03-18 --- +import image from './assets/scaleway-prom1.webp' +import image2 from './assets/scaleway-prom2.webp' +import image3 from './assets/scaleway-prom3.webp' +import image4 from './assets/scaleway-prom4.webp' +import image5 from './assets/scaleway-grafana_login.webp' +import image6 from './assets/scaleway-grafana_home.webp' +import image7 from './assets/scaleway-grafana_datasource.webp' +import image8 from './assets/scaleway-grafana_import.webp' +import image9 from './assets/scaleway-grafana_dash_datasource.webp' +import image10 from './assets/scaleway-grafana_dashboard.webp' +import image11 from './assets/scaleway-monito3.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -79,15 +91,15 @@ We are first going to deploy the `Prometheus` stack in a dedicated Kubernetes [n kubectl --namespace monitoring port-forward $POD_NAME 9090 ``` 4. Access the `Prometheus` dashboard using the following URL: http://localhost:9090. - + 5. Verify that both `node-exporter` and `kube-state-metrics` metrics are correctly scrapped by `Prometheus`: - The `node-exporter` metrics begin with "node\_" - + - The `kube-state-metrics` begin with "kube\_" - + 6. Prometheus can generate graphs on its own. You can test the feature by choosing metrics to analyze directly in the application: - + ## Deploying Grafana @@ -117,20 +129,20 @@ We are going to use and deploy `Grafana` to display the `Prometheus` metrics in Forwarding from [::1]:3000 -> 3000 ``` 4. Open the Grafana Web Interface in a web browser at `http://localhost:3000`. The login screen displays. Enter the user `admin` and the password recovered in step 2: - + 5. The welcome screen displays and invites you to complete the configuration of Grafana. Click **Add data source** to configure a new data source: - + 6. Choose **Prometheus** as data source from the list of available options. 7. Enter the details of the data source. You can leave the default settings and add the data source: `http://prometheus-server`. Click **Test & Save** to validate the connection to Prometheus and to save the settings: - + 8. Click the **+** sign and then **Import** to import a ready-to-use dashboard from the Grafana website. To create a dashboard that uses _kube-state-metrics_, import the dashboard number [8588](https://grafana.com/grafana/dashboards/8588) and get information about your Deployment, Statefulset, and Daemonset: - + 9. Choose `Prometheus` as data source and click **Import**. - + 10. Access the dashboard with metrics for Deployment, Statefulset, and Daemonset: - + 11. You can also configure additional dashboards, for example, the node exporter full dashboard ([1860](https://grafana.com/grafana/dashboards/1860)) to display a dashboard with system metrics for each Kubernetes node: - + You now have basic monitoring for your Kubernetes Kapsule cluster. For more information on how to configure your cluster, refer to the official [Kubernetes documentation](https://kubernetes.io/docs/home/). diff --git a/tutorials/mutli-node-rocket-chat-community-private-network/index.mdx b/tutorials/mutli-node-rocket-chat-community-private-network/index.mdx index 537981d6a3..6644fbcc9e 100644 --- a/tutorials/mutli-node-rocket-chat-community-private-network/index.mdx +++ b/tutorials/mutli-node-rocket-chat-community-private-network/index.mdx @@ -13,12 +13,24 @@ dates: validation: 2025-01-02 posted: 2020-10-19 --- +import image from './assets/scaleway-private_network_schema.webp' +import image2 from './assets/scaleway-create_private_network.webp' +import image3 from './assets/scaleway-new_private_network.webp' +import image4 from './assets/scaleway-pvn_add_instance.webp' +import image5 from './assets/scaleway-pvn_add_instance.webp' +import image6 from './assets/scaleway-rc_setup_1.webp' +import image7 from './assets/scaleway-rc_setup_2.webp' +import image8 from './assets/scaleway-rc_setup_3.webp' +import image9 from './assets/scaleway-rc_setup_4.webp' +import image10 from './assets/scaleway-rc_chat.webp' +import image11 from './assets/scaleway-rc_admin.webp' + import Requirements from '@macros/iam/requirements.mdx' In this tutorial, you will learn how the Private Network feature can help you to build a distributed [Rocket.Chat](/tutorials/run-messaging-platform-with-rocketchat/) application on [General Purpose](https://www.scaleway.com/en/cost-optimized-instances/) and [Development](https://www.scaleway.com/en/cost-optimized-instances/) Instances using a Private Network to communicate securely between them: - + Private Networks are a LAN-like layer 2 Ethernet network. A new network interface with a unique MAC address is configured on each Instance in a Private Network. You can use this interface to communicate in a secure and isolated network, using private IP addresses of your choice. @@ -44,13 +56,13 @@ To reach the goal of this tutorial, you will use four [Production-Optimized Inst 1. Log in to your [Scaleway console](https://console.scaleway.com/) and enter the **Instances** section from the **Compute** group on the side menu. 2. Click **Private Networks** to display a list of your Private Networks. Click **+Create a Private Network** to create a new one. - + 3. Enter the details of the Private Network. Make sure to create the Private Network in the same geographical region as your Instances: - + 4. Select the newly created Private Network from your networks list. From the drop-down list, click the **Instances** tab to add your Instances: - + 5. Add all Instances for your Rocket.Chat setup to the Private Network. Once added, they are listed on the network overview page together with their corresponding virtual MAC address: - + 6. Log into each of your Instances using [SSH](/instances/how-to/connect-to-instance/) to configure the Private Network interface. Use the `ip link show` command to identify the automatically assigned name of the interface: ``` root@virtual-instance:~# ip link show @@ -408,17 +420,17 @@ To reach the goal of this tutorial, you will use four [Production-Optimized Inst 1. Point your web browser to your configured DNS hostname (i.e., `https://rocketchat.example.com`). 2. The Rocket.Chat setup wizard displays. Enter your information for the admin account and click **Continue** to go to the next step: - + 3. Provide the required information about your organization and click **Continue** to proceed with the configuration: - + 4. Enter the details for your Rocket.Chat installation and confirm by clicking on **Continue**: - + 5. You can either register your server with Rocket.Chat to have access to additional services or keep it as a standalone solution: - + 6. Once you complete all steps, you are automatically logged into your Rocket.Chat application. You can start chatting now and invite other users to your community: - + 7. Check the number of running Instances from the Rocket.Chat administration interface. - + Once everything is set up and working, you can remove the public flexible IP addresses from both Rocket.Chat Instances, as well as from the MongoDB® instance. They will be able to communicate securely using the Private Network. diff --git a/tutorials/nats-rdb-offload/index.mdx b/tutorials/nats-rdb-offload/index.mdx index 3b95de99dd..8b5c381914 100644 --- a/tutorials/nats-rdb-offload/index.mdx +++ b/tutorials/nats-rdb-offload/index.mdx @@ -14,6 +14,8 @@ dates: validation: posted: --- +import image from './assets/scaleway-nats-offload-archi.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -24,7 +26,7 @@ In this tutorial, we show how to set up a system that receives a message from a - A publisher application, that sends a message to a Scaleway NATS stream. - A subscriber application, that consumes messages published to the stream and then writes the data into a Scaleway Managed Database. - + We show how to provision all the required Scaleway resources using code examples and the Scaleway [console](https://console.scaleway.com/). The code for the functions is written in Python. diff --git a/tutorials/nextcloud-instantapp/index.mdx b/tutorials/nextcloud-instantapp/index.mdx index 9b2bbb2c2d..6a0703327b 100644 --- a/tutorials/nextcloud-instantapp/index.mdx +++ b/tutorials/nextcloud-instantapp/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-03-06 posted: 2018-08-16 --- +import image from './assets/scaleway-instantapp-nextcloud-install.webp' +import image2 from './assets/scaleway-instantapp-nextcloud-splash.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -69,7 +72,7 @@ When the Instance is running, you can see the Instance's IP address in the serve ``` 3. Open a web browser and enter the NextCloud URL from the MOTD in the navigation bar. NextCloud's installation script displays. 4. Enter a username and password (of your choice) as well as the database credentials shown in the MOTD of your Instance. Leave the database host as `localhost`. Then click **Install**. - + The installation takes a few seconds to complete. @@ -84,7 +87,7 @@ Once the installation completes, you are redirected to the login page. Enter the You are now connected to your personal cloud storage and can start using it. - + ## Opening the mail ports to send emails diff --git a/tutorials/odoo-easy-deploy/index.mdx b/tutorials/odoo-easy-deploy/index.mdx index fb391926f5..61fdf090da 100644 --- a/tutorials/odoo-easy-deploy/index.mdx +++ b/tutorials/odoo-easy-deploy/index.mdx @@ -16,6 +16,32 @@ categories: - container-registry - postgresql-and-mysql --- +import image from './assets/scaleway-registry_home.webp' +import image2 from './assets/scaleway-create-namespace.webp' +import image3 from './assets/scaleway-namespace-created.webp' +import image4 from './assets/scaleway-image-pushed.webp' +import image5 from './assets/scaleway-kapsule_splashscreen.webp' +import image6 from './assets/scaleway-create-cluster.webp' +import image7 from './assets/scaleway-cluser-created.webp' +import image8 from './assets/scaleway-easy-deploy-01.webp' +import image9 from './assets/scaleway-easy-deploy-03.webp' +import image10 from './assets/scaleway-easy-deploy-04.webp' +import image11 from './assets/scaleway-db-create-instance.webp' +import image12 from './assets/scaleway-create-db1.webp' +import image13 from './assets/scaleway-create-db2.webp' +import image14 from './assets/scaleway-create-db3.webp' +import image15 from './assets/scaleway-db-created.webp' +import image16 from './assets/scaleway-edit-cluster.webp' +import image17 from './assets/scaleway-edit-cluster2.webp' +import image18 from './assets/scaleway-expose-port.webp' +import image19 from './assets/scaleway-edit-container2.webp' +import image20 from './assets/scaleway-update-container.webp' +import image21 from './assets/scaleway-load-balancer1.webp' +import image22 from './assets/scaleway-load-balancer2.webp' +import image23 from './assets/scaleway-odoo-landing1.webp' +import image24 from './assets/scaleway-odoo-landing2.webp' +import image25 from './assets/scaleway-odoo-demo.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -34,18 +60,18 @@ But how can you initiate your Odoo journey? Our guide will walk you through the ## Creating a Scaleway Container Registry namespace 1. Go to the **Container Registry** dashboard in the [Scaleway console](https://console.scaleway.com), and click **Create a namespace**. - + 2. Complete the required information: - **Namespace name**: any unique name of your choice (must contain only alphanumeric characters, dots, and dashes) - **Namespace description**: a description for your Namespace - **Region**: a geographical region for your namespace. - **Privacy Policy**: you must select **Public** (currently the Easy-Deploy feature only works on public images) 3. Check the summary, then click **Create a namespace**. - + The following screen displays: - + ## Using Docker to get the official Odoo image and pushing it to your Scaleway Container Registry @@ -72,7 +98,7 @@ But how can you initiate your Odoo journey? Our guide will walk you through the This process takes some minutes to complete. 5. Wait a minute, then go to the Container Registry dashboard to make sure the image has been successfully created. - + Now that the Odoo image is in our Container Registry, we can deploy it with Kubernetes. @@ -80,7 +106,7 @@ But how can you initiate your Odoo journey? Our guide will walk you through the 1. Go to the Kubernetes dashboard in the Scaleway console. 2. Click **Create a cluster**. - + 3. Enter the required information: - **Cluster type**: select one between [Kapsule](/kubernetes/concepts/#kubernetes-kapsule) or [Kosmos (Multi-AZ)](/kubernetes/concepts/#kubernetes-kosmos) - **Cluster name**: any identifying name of your choice (must contain only alphanumeric characters and dashes) @@ -89,18 +115,18 @@ But how can you initiate your Odoo journey? Our guide will walk you through the - **Node type**: the type of Instance you want for your cluster - **Node options**: choose your required options, or leave at default values - + 4. Check the summary, then click **Create a cluster**. A process screen displays to inform you that your cluster is being created. You may also see an additional warning that some of your pools are not yet ready. After a few minutes, your cluster should be up and running and ready to use. - + 5. Click the **Easy Deploy** tab on the cluster information page. Select the **Registry** option. - + 6. Select the namespace, the container, and its version to deploy: - + 7. Select the **Deployment** type for the container. - + You can leave the other settings at the default values, we will return to them later. 8. Enter a name and a namespace for your application. @@ -114,17 +140,17 @@ The Odoo image [documentation](https://hub.docker.com/_/odoo) specifies that it 1. Go to the **Database** dashboard, in the Scaleway console. 2. Click **Create an Instance**. - + 3. Enter your Database Instance information. Select **PostgreSQL-12** as your database engine. Select your **region** and **node type** (we recommend minimum `DB-DEV-L`). - + 4. Enter a **username** and **password** in the **Credentials** section. Then, enter a **name** for your Database Instance. Note all of these down as you will need them in a future step. - + 5. Check the summary and click **Create an Instance**. - + A screen reports the progress of the Database creation. After a minute or two, a screen similar to the following should confirm the creation of your Database Instance. - + 6. Take note of the endpoint information, as you will need it in the next step. ## Connecting the Odoo application to the PostgreSQL server @@ -132,34 +158,34 @@ The Odoo image [documentation](https://hub.docker.com/_/odoo) specifies that it The Odoo image [documentation](https://hub.docker.com/_/odoo) tells us that by modifying the application's environment variables `HOST`, `PORT`, `USER`, and `PASSWORD` we can easily connect it to a PostgreSQL server. We will expose our Odoo application with a Load Balancer, and set these environment variables so that it can connect to our newly created database. 1. Go to the **Kubernetes** dashboard in the Scaleway console and select the cluster you created and deployed your Odoo image on. - + 2. Click the **Easy Deploy** tab. Then click **> Edit** next to your Odoo container. - + 3. Click to **Add Load Balancer**. 4. Under **Container port to expose**, enter `80:8069` and click **Add**. Your Load Balancer will map incoming traffic ports (80 is the default for `http`, and you can use 443 for `https`) to your exposed container port (8069 being the default Odoo port). - + 5. Leave the **Number of replicas** option at 1 (default) to avoid session token conflicts. 6. Click **Add Variable** under **Environment Variables**. Add four variables. - + 7. Add the following information for your variables. - **USER**: the username that you set when creating your PostgreSQL database - **PASSWORD**: the password that you set when creating your PostgreSQL database - **HOST**: the first part of your database's endpoint, which you previously noted down. If your endpoint was `123.456.78.91:1011`, then the host is `123.456.78.91` - **PORT**: the second part of your database's endpoint. If your endpoint was `123.456.78.91:1011`, then the port is `1011` 8. Click **Update Container**. The container information page displays. - + 9. Click **Load Balancer** on the side menu of the Scaleway console. A list of your Load Balancers displays. - + 10. Click the name of the Load Balancer you added. Take note of the Load Balancer IP. - + ## Launching Odoo in a browser 1. Enter the `Load Balancer IP` in a new browser window. It will take you to the Odoo landing page: - + 2. Enter the required information: - **Master Password**: Odoo generates and auto-completes a master password for you (displayed at the top of the page), which you can change if you wish - **Database Name**: Your choice of name @@ -170,11 +196,11 @@ The Odoo image [documentation](https://hub.docker.com/_/odoo) tells us that by m - **Country**: Your country - **Demo data**: If you check this box, the application will be populated with demo data (which you can later overwrite with your own data) as a guide. - + The application may take a few minutes to launch. - + You can now start installing apps, configuring your settings, and using Odoo. Check out the [official Odoo documentation](https://www.odoo.com/documentation/16.0/) for more help. diff --git a/tutorials/odoo/index.mdx b/tutorials/odoo/index.mdx index ad690958e2..745580507b 100644 --- a/tutorials/odoo/index.mdx +++ b/tutorials/odoo/index.mdx @@ -15,6 +15,12 @@ dates: validation: 2025-01-02 posted: 2020-08-13 --- +import image from './assets/scaleway-odoo14_install.webp' +import image2 from './assets/scaleway-odoo_app_dashboard.webp' +import image3 from './assets/scaleway-odoo_menu.webp' +import image4 from './assets/scaleway-odoo_crm.webp' +import image5 from './assets/scaleway-odoo_discuss.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -70,7 +76,7 @@ This tutorial will show you how to deploy Odoo 16 on a Scaleway machine running ## Configuring Odoo 1. Open an internet browser on your local computer and point it to `http://:8069`. The Odoo installation wizard displays: - + 2. Enter the following information in the form: - **Master Password:** The master password for the Odoo database. By default, an auto-generated value is pre-filled. You can change it to your own desired password if required. - **Database Name:** A name for the Odoo PostgreSQL database @@ -83,20 +89,20 @@ This tutorial will show you how to deploy Odoo 16 on a Scaleway machine running Once all data is filled in, click **Create database** to create the Odoo database and your first login. The application dashboard displays: - + 3. (Optional) Click the **Install** button next to each app you want to install automatically on your Odoo server. You can see more details about each application by clicking on the **Learn More** button. To navigate around your installed apps, click the mosaic button in the top left corner and select your application from the list: - + Odoo CRM module: - + Odoo Discuss module with activated e-learning module: - + ## Setting up Nginx as an HTTPS proxy diff --git a/tutorials/openvpn-instant-app/index.mdx b/tutorials/openvpn-instant-app/index.mdx index 2759fba269..8fd2c61e15 100644 --- a/tutorials/openvpn-instant-app/index.mdx +++ b/tutorials/openvpn-instant-app/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-01-02 posted: 2015-06-11 --- +import image from './assets/scaleway-tunnelblick03.webp' +import image2 from './assets/scaleway-tunnelblick04.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -130,8 +133,8 @@ Read our tutorial: https://www.scaleway.com/en/docs/tutorials/openvpn-instant-ap ``` 6. Download the configuration file from the `URL` displayed in the MOTD. We assume that you have already installed a VPN client. 7. Open the configuration with your VPN client. - + 8. Start a new connection using the VPN profile we just installed once the configuration is loaded. - + You are now connected and all your traffic is routed through the OpenVPN server. Check that your public IP matches the public IP of the server to ensure your configuration is correct. \ No newline at end of file diff --git a/tutorials/postgis-managed-databases/index.mdx b/tutorials/postgis-managed-databases/index.mdx index c73bf736b1..530c5b2b43 100644 --- a/tutorials/postgis-managed-databases/index.mdx +++ b/tutorials/postgis-managed-databases/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-04-08 posted: 2019-12-31 --- +import image from './assets/scaleway-dbaas_advanced_settings.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -86,7 +88,7 @@ PostgreSQL is designed to run in very different configurations, from small test The parameter `work_mem` defines the amount of memory that internal sorting operations and hash tables can consume in the RAM, set this value to 16 MB. 4. Save the configuration by clicking on the check mark symbol (✔). The configuration of your Database Instance is updated: - + Your Database Instance is configured now, and it is time to load some spatial data. diff --git a/tutorials/postman-api/index.mdx b/tutorials/postman-api/index.mdx index 1b475ae018..c292ae162b 100644 --- a/tutorials/postman-api/index.mdx +++ b/tutorials/postman-api/index.mdx @@ -13,6 +13,14 @@ dates: validation: 2025-04-08 posted: 2022-03-24 --- +import image from './assets/scaleway-postman-create-workspace.webp' +import image2 from './assets/scaleway-postman-download-open-api.webp' +import image3 from './assets/scaleway-postman-import.webp' +import image4 from './assets/scaleway-postman-add-variables.webp' +import image6 from './assets/scaleway-postman-select-environment.webp' +import image7 from './assets/scaleway-postman-endpoint.webp' +import image8 from './assets/scaleway-postman-response.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -36,15 +44,15 @@ In this tutorial, you will learn how to import Scaleway APIs into Postman, confi ## Importing Scaleway APIs into Postman 1. Click **Workspaces** > **Create Workspace** in the top menu of the Postman interface. - + 2. Enter a name and description and select a visibility setting for your workspace. Your workspace displays. 3. Go to the Scaleway [developers website](https://www.scaleway.com/en/developers/) and select a product API to download. In this tutorial, we use the [Scaleway Instances API](https://www.scaleway.com/en/developers/api/instance/). 4. Click **Download OpenAPI**. - + 5. Click **Collections** > **Import** in the side menu of the Postman interface. - + 6. Drag and drop the Instance's Open API `yml` file into the indicated space to upload. 7. Click **Import** to conclude. @@ -66,7 +74,7 @@ In this section, we show you how to create an environment with environment varia You can add your project ID, and the access key and secret key for your project. We recommend you set your project's secret key as **secret** to increase security. - + 4. Click **Save** to do so. ## Setting up authorization @@ -75,9 +83,9 @@ You can set up authorization at the collection, request category, and/or request 1. Go to the **Collections** tab. 2. Click on the Instance API collection. The **Authorization** tab displays by default. - + 3. Select your environment in the top right menu. - + 4. Select **API key** as the authorization type. 5. Enter the following values: - Key: `X-Auth-Token` @@ -96,7 +104,7 @@ In this tutorial, we will create an Instance through an API request operated wit 2. Click the **Create a server** request under **Instance API** > `/instance/v1/zones/{zone}/servers/`. 3. Go to the **Body** tab of the request. 4. Edit the `{zone}` variable in the endpoint. In this tutorial, we will create our Instance in `fr-par-1`. - + If you always create resources in the same region, you can [set up a variable](/tutorials/postman-api/#setting-up-an-environment) for the zone in your environment. @@ -118,7 +126,7 @@ In this tutorial, we will create an Instance through an API request operated wit } ``` 6. Click **Send**. - + You can **Save** to make sure your configuration is stored for future use. diff --git a/tutorials/prestashop-dedibox/index.mdx b/tutorials/prestashop-dedibox/index.mdx index 388f322e97..682c5b3f5e 100644 --- a/tutorials/prestashop-dedibox/index.mdx +++ b/tutorials/prestashop-dedibox/index.mdx @@ -13,6 +13,18 @@ dates: validation: 2025-05-19 posted: 2020-08-07 --- +import image from './assets/scaleway-prestashop_install_1.webp' +import image2 from './assets/scaleway-prestashop_install_2.webp' +import image3 from './assets/scaleway-prestashop_install_3.webp' +import image4 from './assets/scaleway-prestashop_install_4.webp' +import image5 from './assets/scaleway-prestashop_install_5.webp' +import image6 from './assets/scaleway-prestashop_install_6.webp' +import image7 from './assets/scaleway-prestashop_install_7.webp' +import image8 from './assets/scaleway-prestashop_login.webp' +import image9 from './assets/scaleway-prestashop_config.webp' +import image10 from './assets/scaleway-prestashop_ssl_1.webp' +import image11 from './assets/scaleway-prestashop_ssl_2.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -243,25 +255,25 @@ Certbot is available in the _Universe_ repositories of Ubuntu. The basic installation of your PrestaShop is done now, and you can start the configuration of the application using the web-based configuration wizard. 1. Open your web browser and point it to `http://eshop.example.com/install`. The configuration wizard displays. Choose the language you want to use for your e-commerce site and click **Next**. - + 2. Read the license terms of PrestaShop and tick the box **I agree to the above terms and conditions**, then click **Next**. - + The configuration wizard checks the compatibility of your system. 3. If all requirements are fulfilled you see a confirmation message, and you can click **Next** to proceed further with the configuration. - + 4. Enter the information about your shop, and your account credentials, and choose a secure password for your administrator account. Click **Next** to continue with the installation. - + 5. Enter the connection details for your database. You have set the credentials for the database user in a previous step. If you want to use PrestaShop with a [Database for MySQL](https://www.scaleway.com/en/database/), you will find the credentials in your Scaleway console. Click **Test your database connection now!** to verify that the connection is successful. Once done, click **Next** to continue. - + The setup wizard will create the database structure for PrestaShop. This step may take a moment, and you are redirected to the next page once the task is completed. - + Once the installation is finished, a summary of the installation displays: - + 6. Remove the installation directory to complete the installation: ``` rm -rf /var/www/html/eshop/install @@ -272,7 +284,7 @@ The basic installation of your PrestaShop is done now, and you can start the con By default, Prestashop uses plain, unencrypted HTTP connections, which could be a security risk. As we have already obtained a TLS certificate for our site, we will configure our PrestaShop installation to use HTTPS. 1. Go to `http://eshop.example.com/admin`. The administrator login displays. Connect yourself to the administrator area using the credentials set during the installation: - + For security reasons, PrestaShop will rename the `/admin` directory to a random string. In case you experience 404 file not found errors in the admin area, add the following location block under other location blocks in your Nginx configuration file (`/etc/nginx/sites-available/eshop.example.com`). Remember to replace `yourAdminDirectory` with the name of your admin directory. @@ -283,11 +295,11 @@ By default, Prestashop uses plain, unencrypted HTTP connections, which could be ``` 2. Click **Shop Parameters** > **General** in the menu on the left. - + 3. Click the link **Please click here to check if your shop supports HTTPS**. You are redirected to a secure HTTPS connection. - + 4. Enable HTTPS connections by clicking on the corresponding button. By default, PrestaShop uses HTTPS only on the member and checkout sections. If you want to use HTTPS on all pages, enable the option by clicking on the corresponding button. Then validate the configuration by clicking on **Save** at the bottom of the page. - + Your e-commerce site now uses secure HTTPS for connections, and you can start adding products to your online shop. diff --git a/tutorials/prometheus-monitoring-grafana-dashboard/index.mdx b/tutorials/prometheus-monitoring-grafana-dashboard/index.mdx index ea60b7f310..d4dcf64b10 100644 --- a/tutorials/prometheus-monitoring-grafana-dashboard/index.mdx +++ b/tutorials/prometheus-monitoring-grafana-dashboard/index.mdx @@ -13,6 +13,8 @@ dates: validation: 2025-01-30 posted: 2018-06-07 --- +import image from './assets/scaleway-grafana_stats.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -261,4 +263,4 @@ You are now ready to create your first dashboard from the information collected Below is an example of a dashboard that uses the CPU usage of our node and presents it in Grafana: - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/protect-server-fail2ban/index.mdx b/tutorials/protect-server-fail2ban/index.mdx index ca7b89def5..8f54b355d1 100644 --- a/tutorials/protect-server-fail2ban/index.mdx +++ b/tutorials/protect-server-fail2ban/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-04-08 posted: 2018-08-22 --- +import image from './assets/scaleway-postfix-install.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -34,7 +36,7 @@ In this tutorial, you will learn how to configure the service on an Ubuntu Bioni sudo apt-get install fail2ban postfix ``` 2. Choose `Internet Site` when asked for the configuration: - + 3. Once the installation has completed, open the file `/etc/aliases` and add the following line: ``` root: me@mydomain.tld diff --git a/tutorials/protect-server-using-crowdsec/index.mdx b/tutorials/protect-server-using-crowdsec/index.mdx index ffe78243a5..e3a0b344db 100644 --- a/tutorials/protect-server-using-crowdsec/index.mdx +++ b/tutorials/protect-server-using-crowdsec/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-04-08 posted: 2021-10-11 --- +import image from './assets/scaleway-crowdsec-ecosystem.webp' +import image2 from './assets/scaleway-crowdsec-dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -21,7 +24,7 @@ Once malicious behavior is detected, its IP is stored via the Local API (LAPI), Another feature enables every user of CrowdSec to share their banned IPs to a Central API (CAPI) managed by the CrowdSec team. When an IP is identified as being dangerous, it is shared with the whole community and is banned by the bouncers. This feature can be deactivated. - + In this tutorial, we will set up [CrowdSec](https://crowdsec.net/) on a Dedibox and protect the SSH connection. @@ -168,7 +171,7 @@ INFO[07-10-2021 11:24:45 AM] Metabase is ready You can navigate to `http://:3000/` and log in with the credentials given. You can list all the decisions and get graphs: - + CrowdSec includes metrics that can be used by Prometheus. You can set up with Grafana and Prometheus [different dashboards](https://doc.crowdsec.net/docs/cockpit/prometheus). diff --git a/tutorials/proxmox-softraid/index.mdx b/tutorials/proxmox-softraid/index.mdx index 0e5e19034a..ebbdd1f11c 100644 --- a/tutorials/proxmox-softraid/index.mdx +++ b/tutorials/proxmox-softraid/index.mdx @@ -13,6 +13,17 @@ dates: posted: 2020-01-22 validation_frequency: 24 --- +import image from './assets/scaleway-proxmox_installer-01.webp' +import image2 from './assets/scaleway-proxmox_installer-02.webp' +import image3 from './assets/scaleway-proxmox_installer-03.webp' +import image4 from './assets/scaleway-proxmox_installer-04.webp' +import image5 from './assets/scaleway-proxmox_installer-06.webp' +import image6 from './assets/scaleway-proxmox_installer-07.webp' +import image7 from './assets/scaleway-proxmox_installer-08.webp' +import image8 from './assets/scaleway-proxmox_installer-09.webp' +import image9 from './assets/scaleway-proxmox_login.webp' +import image10 from './assets/scaleway-proxmox_dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -34,17 +45,17 @@ The tool provides a REST-API as well as a graphical web interface to manage the 2. Mount the Proxmox ISO, available on the server [virtualmedia.online.net](http://virtualmedia.online.net). The mounting procedure may differ slightly depending on the KVM module of your Dedibox. The instructions for Proxmox VE 6 can be found [here](https://virtualmedia.online.net/proxmox/proxmox-ve_6.0-1.iso). 3. Boot the server from the ISO file by choosing the virtual CD-ROM drive in the boot options. 4. The Proxmox [EULA](https://www.gnu.org/licenses/agpl-3.0.html) displays. Agree to it by clicking **I agree**. A summary of the Proxmox installer displays. - + 5. Click **Options** at the bottom of the page. - + 6. Choose the RAID level for Proxmox. To mirror the data on both drives, choose **zfs (RAID1)**, then click **Next** to continue with the installation. - + 7. Enter the Location of your Server and select the timezone to use, then click **Next**. - + 8. Enter a strong administration password with at least eight characters and its confirmation, and a contact email address. Proxmox will send important notifications to this email address, so make sure it is valid. Once all set, click **Next**. - + 9. Configure the **Management Network**. This will be the network interface on which the Proxmox web interface and APIs are available. We recommend you configure it on the primary email address of your Dedibox. - + The network configuration should look as follows: - **Management Interface**: The first network interface of your machine (i.e. `eno1`) @@ -56,18 +67,18 @@ The tool provides a REST-API as well as a graphical web interface to manage the A summary of the configuration displays. 10. Verify that all parameters are correct and click **Install** to launch the installation. - + Once the installation is complete, a confirmation displays. 11. Click **Reboot** to reboot the server before accessing the Proxmox web interface: - + ## Accessing Proxmox Once the server has rebooted, the Proxmox web interface is available. 1. Open a web browser and go to `https://your_scaleway_dedibox:8006/`. The login displays. Enter your credentials and click **Login**: - + Enter the following credentials to log in: @@ -78,7 +89,7 @@ Once the server has rebooted, the Proxmox web interface is available. The Proxmox dashboard displays. 2. Continue to deploy and manage virtual machines. - + ## Going further diff --git a/tutorials/pushing-metrics-logs-from-scw-instance/index.mdx b/tutorials/pushing-metrics-logs-from-scw-instance/index.mdx index fd03c38760..a2041608ab 100644 --- a/tutorials/pushing-metrics-logs-from-scw-instance/index.mdx +++ b/tutorials/pushing-metrics-logs-from-scw-instance/index.mdx @@ -13,6 +13,10 @@ dates: validation: 2025-04-22 posted: 2023-06-28 --- +import image from './assets/scaleway-import-dashboard.webp' +import image2 from './assets/scaleway-metrics-display.webp' +import image3 from './assets/scaleway-logs-display.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -120,7 +124,7 @@ The only file we will be editing in this tutorial is the `agent.yaml` file to ad 2. Click **Open dashboards** at the top right corner of your screen. 3. Log in to Grafana using your credentials. 4. Click the downward pointing arrow at the top right corner of your screen and select **Import dashboard**. - + 5. Paste the following dashboard ID `12486` in the **Import via grafana.com** section and click **Load**. Alternatively, download the [dashboard's JSON template](https://grafana.com/grafana/dashboards/12486-node-exporter-full/) and upload it in the **Import dashboard** section. 6. Click **Import**. 7. Configure your dashboard as you please. @@ -132,7 +136,7 @@ The only file we will be editing in this tutorial is the `agent.yaml` file to ad Your metrics should display in the dashboard. - + 9. Click **Toggle menu** and **Explore**. @@ -140,4 +144,4 @@ The only file we will be editing in this tutorial is the `agent.yaml` file to ad 10. Select the labels you want to apply in the **Label filters** section. 11. Click **Run query** at the top right corner of your screen. Your logs should display. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/python-lists-dicts/index.mdx b/tutorials/python-lists-dicts/index.mdx index 495488b114..e0bd52a589 100644 --- a/tutorials/python-lists-dicts/index.mdx +++ b/tutorials/python-lists-dicts/index.mdx @@ -12,6 +12,13 @@ dates: validation: 2025-04-22 posted: 2023-03-23 --- +import image from './assets/scaleway-python-list.webp' +import image2 from './assets/scaleway-python-list-reverse-index.webp' +import image3 from './assets/scaleway-python-list.webp' +import image4 from './assets/scaleway-python-list-reverse-index.webp' +import image5 from './assets/python-lists-cheatsheet.webp' +import image6 from './assets/python-dicts-cheatsheet.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -87,7 +94,7 @@ Python lets us access specific items in a list by referring to their **index pos The first item in a list is always at index position **O**. The second item is at index position **1**, the third at position **3**, and so on. - + To access an item in a list, use the name of the list variable, followed by the index number of the item in square brackets. @@ -119,7 +126,7 @@ To access an item in a list, use the name of the list variable, followed by the There is another index that you can use to access items in a list, and this one works from right to left. The right-most item in a list has the index **-1**, then moving one to the left you have **-2** and so on: - + 4. Access the last item in the list with the following code: @@ -436,9 +443,9 @@ For the last section of our list tutorial, let's look at some useful operations The table below provides a summary of everything covered above: **List indexing** - + - + | | Lists | |-------------------------------------------|---------------------------------------------------------------| @@ -463,7 +470,7 @@ The table below provides a summary of everything covered above: ### Lists cheatsheet - + This content is also available as a printable PDF file. [Download the Python lists cheatsheet - Printable](python-lists-cheatsheet.pdf). @@ -717,7 +724,7 @@ The table below provides a summary of everything covered above: ### Dictionaries cheatsheet - + This content is also available as a printable PDF file. [Download the Python dicts cheatsheet - Printable](python-dicts-cheatsheet.pdf) diff --git a/tutorials/remote-desktop-with-xrdp/index.mdx b/tutorials/remote-desktop-with-xrdp/index.mdx index d9c7a7cab7..a4d5b6f3eb 100644 --- a/tutorials/remote-desktop-with-xrdp/index.mdx +++ b/tutorials/remote-desktop-with-xrdp/index.mdx @@ -12,6 +12,10 @@ dates: validation: 2025-01-22 posted: 2019-12-02 --- +import image from './assets/scaleway-rdp_01.webp' +import image2 from './assets/scaleway-rdp_02.webp' +import image3 from './assets/scaleway-rdp_03.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -122,10 +126,10 @@ For security reasons, it is recommended to create a regular user to connect to t 1. Download and install an RDP client of your choice. We will use the [Microsoft Remote Desktop Client](https://docs.microsoft.com/en-us/windows-server/remote/remote-desktop-services/clients/remote-desktop-clients) in this tutorial. 2. Start the RDP client and click **Add Desktop** to add a new connection: - + 3. Enter the connection details. You need to enter at least your Instance's IP in the **PC name**. Optionally, you can add a **Friendly Name** to facilitate the identification of your Instance in case you configure several RDP connections. - + 4. Double-click the connection icon. During the first connection, you may be asked to validate the fingerprint of the Instance. Click **OK** to confirm the connection. 5. Enter the identifier and password of your regular user when prompted. 6. You are now connected, and the remote desktop displays. You can launch applications on the remote machine, as you would do locally. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/rtmp-self-hosted-streaming/index.mdx b/tutorials/rtmp-self-hosted-streaming/index.mdx index 4270b9df37..1199ac5ef7 100644 --- a/tutorials/rtmp-self-hosted-streaming/index.mdx +++ b/tutorials/rtmp-self-hosted-streaming/index.mdx @@ -13,6 +13,11 @@ dates: validation: 2025-03-27 posted: 2019-05-20 --- +import image from './assets/scaleway-obs_settings.webp' +import image2 from './assets/scaleway-obs_stream_settings.webp' +import image3 from './assets/scaleway-vlc_source.webp' +import image4 from './assets/scaleway-twitch_stream.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -105,7 +110,7 @@ Using the open-source [RTMP protocol](https://en.wikipedia.org/wiki/Real-Time_Me To broadcast a stream from a local computer to the streaming server, a broadcast system is required. Download [OBS Studio](https://obsproject.com/), an open-source broadcasting solution, which is available for Linux, macOS, and Windows. 1. In the **Controls** section of the Interface, click **Settings** to enter the OBS configuration interface: - + 2. Enter the **Stream** tab and enter the Information about your streaming Instance: Server: @@ -114,7 +119,7 @@ To broadcast a stream from a local computer to the streaming server, a broadcast - Server: `rtmp:///live` - Stream Key: _your_stream?pwd=a_secret_password_ (replace _your_stream_ with a custom name of your stream and _a_secret_password_ with the password you have set in the Nginx configuration) - + Save the configuration and set up your scene within OBS Studio. 3. When ready, start broadcasting to your Instance by clicking on **Start Streaming** in the **Controls** section of OBS. @@ -127,7 +132,7 @@ The stream can be viewed in your favorite media player, for example [VLC media p 2. Click the **Network** tab and enter the URL of your Stream: - URL: `rtmp:///live/` - + 3. Click **Open** and your stream will be visible in the media player. ## Setting up multi-streaming @@ -195,4 +200,4 @@ It is also possible to rebroadcast a stream to platforms like YouTube, Facebook, systemctl restart nginx.service ``` 4. Start broadcasting from OBS. You can now either view your stream via a media player like VLC, and also from broadcasting platforms like Twitch: - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/run-manage-linux-vm-on-apple-silicon-tart/index.mdx b/tutorials/run-manage-linux-vm-on-apple-silicon-tart/index.mdx index e093e9c447..83eadb70bf 100644 --- a/tutorials/run-manage-linux-vm-on-apple-silicon-tart/index.mdx +++ b/tutorials/run-manage-linux-vm-on-apple-silicon-tart/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-02-11 posted: 2024-01-30 --- +import image from './assets/tart-run-sonoma.webp' +import image2 from './assets/tart-run-ubuntu.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -57,7 +60,7 @@ In this tutorial, we will use [Homebrew](https://brew.sh/index), which is a popu - Password: `admin` The MacOS desktop displays: - + ## Running Linux images with Tart @@ -88,7 +91,7 @@ Currently, Tart supports the following Linux images: - Username: `admin` - Password: `admin` - + On images with SSH enabled, you can log in either from the terminal or by using the SSH server, listening on the private IP address of the VM. diff --git a/tutorials/run-messaging-platform-with-rocketchat/index.mdx b/tutorials/run-messaging-platform-with-rocketchat/index.mdx index eedfefd99e..f4ce6e812b 100644 --- a/tutorials/run-messaging-platform-with-rocketchat/index.mdx +++ b/tutorials/run-messaging-platform-with-rocketchat/index.mdx @@ -14,6 +14,10 @@ dates: posted: 2019-01-30 validation_frequency: 24 --- +import image from './assets/scaleway-rocketchat_setup.webp' +import image2 from './assets/scaleway-rocketchat_chat.webp' +import image3 from './assets/scaleway-rocketchat_admin.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -293,7 +297,7 @@ Rocket.Chat functions as a server on its own, but adding an [Nginx Reverse Proxy systemctl restart nginx.service ``` 3. Open your web browser and type your domain name, for example: `https://rocketchat.example.com/`. The Rocket.Chat setup wizard appears in your browser. - + Enter your personal information: - Your name @@ -306,8 +310,8 @@ Rocket.Chat functions as a server on its own, but adding an [Nginx Reverse Proxy In the last step of the setup, you are asked if you want to keep your server as a stand-alone Instance or if you want to register it with Rocket.Chat to have access to additional functions and resources. 4. Access your Rocket.Chat and be the first user in the #general channel. - + 5. Click the menu button, then **Administration** to access the admin interface of your Instance. Here you can configure the look and feel of your Instance as well as additional services like an IRC bridge, bots or OAuth services: - + To use Rocket.Chat directly on your PC or Mac or from your mobile, download the [free application](https://rocket.chat/install) directly from the Rocket.Chat website. For more information and advanced configuration settings of your community, refer to the [official documentation](https://rocket.chat/docs/). \ No newline at end of file diff --git a/tutorials/s3-customize-url-cname/index.mdx b/tutorials/s3-customize-url-cname/index.mdx index 8a5c1eee11..625cc07fd2 100644 --- a/tutorials/s3-customize-url-cname/index.mdx +++ b/tutorials/s3-customize-url-cname/index.mdx @@ -14,6 +14,8 @@ dates: validation: 2025-01-22 posted: 2019-05-21 --- +import image from './assets/scaleway-bucket_cname.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -34,7 +36,7 @@ In this tutorial, we show you how to use CNAME to map a domain or subdomain to a ``` 3. Log into the administration panel of your domain and create a new record that defines the hostname as an alias for the bucket. For example, if the bucket `download.example.com` is located in the Paris region, the CNAME should point to `download.example.com.s3.fr-par.scw.cloud.`: - + You can now access the file `myapp.tar.gz` stored in the bucket `download.example.com` directly at `http://download.example.com/myapp.tar.gz` instead of the usual URL `http://download.example.com.s3.fr-par.scw.cloud/myapp.tar.gz`. diff --git a/tutorials/scaleway-slack-community/index.mdx b/tutorials/scaleway-slack-community/index.mdx index 75f91bd02d..c22c727fba 100644 --- a/tutorials/scaleway-slack-community/index.mdx +++ b/tutorials/scaleway-slack-community/index.mdx @@ -12,6 +12,11 @@ dates: validation: 2025-03-06 posted: 2020-02-12 --- +import image from './assets/scaleway-slack-signup.webp' +import image2 from './assets/scaleway-list-of-scaleway-community-slack-channels.webp' +import image3 from './assets/scaleway-join-channel-or-see-more-details.webp' +import image4 from './assets/scaleway-open-the-slack-app.webp' + Slack is a real-time messaging platform that offers traditional IRC functionalities like direct messaging, private groups, and channels, but with a modern twist. By joining Scaleway's Slack workspace, you gain convenient communication channels with Scaleway teams and fellow community members. This allows for seamless collaboration and discussion about your ongoing projects on the Scaleway infrastructure, facilitating knowledge sharing and idea exchange. @@ -20,7 +25,7 @@ Slack is a real-time messaging platform that offers traditional IRC functionalit 1. Navigate to the [Scaleway homepage](https://www.scaleway.com/en/) and click **Slack Community** in the **Resources** section at the bottom of the page, or access it directly via [this link](https://slack.scaleway.com/). 2. You will be directed to the registration page. Choose one of the suggested **Single Sign-On (SSO)** methods or opt to **Continue with Email** by providing your email address. - + 3. Complete the required fields for **Full Name** and **Password**. You have the option to select whether you want to receive emails from Slack. Tick the checkbox to accept, then click **Create Account** to proceed with your registration. 4. Check your email for an account validation message. Once received, click **Join Now** to finalize the signup process. @@ -29,12 +34,12 @@ Once signed in, you'll land on the Scaleway Community Slack workspace, where you ## Joining a channel Channels in Slack are persistent chat rooms designed for discussing specific topics and projects. In the Scaleway Slack Community, you will discover channels dedicated to various Scaleway products and services, along with a general community channel for broader discussions. - + 1. By default, you are added to the **#community** and **#community-fr** channels. Click on **Channels** to explore additional channels you may wish to join. 2. Sort channels by _Channel name_, _Creation date (newest first)_, _Members (most to fewest)_, or _Members (fewest to most)_. You can also filter channels by _All channels_, _Private channels_, or _Archived channels_. Click on a channel to view it. 3. At the bottom of your workspace, you have the following options: **Join Channel** or **See More Details**. Click **Join Channel** to participate and send messages. - + Consider engaging in discussions with developer teams on channels like **#baremetal**, **#block-storage**, **#database**, **#k8s**, **#object-storage**, **#container-registry**, **#opensource**, or **#gpu-instances** to kickstart your involvement. @@ -44,5 +49,5 @@ Channels in Slack are persistent chat rooms designed for discussing specific top If you are already using the Slack application on your phone or desktop, you can integrate the Scaleway workspace into it for easy access. 1. Click **Scaleway Community** in the upper left corner of the screen to reveal a dropdown menu. - + 2. Choose the last option, **Open the Slack App**, to launch the Slack app. You will be redirected, and shortly after, the Scaleway Community will be automatically added to your workspace index. \ No newline at end of file diff --git a/tutorials/self-hosted-repository-gitea/index.mdx b/tutorials/self-hosted-repository-gitea/index.mdx index 00a9a1c6b2..e69b2b385a 100644 --- a/tutorials/self-hosted-repository-gitea/index.mdx +++ b/tutorials/self-hosted-repository-gitea/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-05-06 posted: 2019-05-28 --- +import image from './assets/scaleway-gitea_app.webp' +import image2 from './assets/scaleway-gitea_dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -115,7 +118,7 @@ While Git was initially developed for software development purposes, it can trac GITEA_WORK_DIR=/var/lib/gitea/ /usr/local/bin/gitea web -c /etc/gitea/app.ini ``` 5. In a web browser go to `http://:3000/` to access the Gitea application: - + 6. Click **Register** to start the database initialization. Gitea supports [SQLite](https://www.sqlite.org/index.html) which makes the application very lightweight and ideal for a self-hosted development Environment. If you require more performance, it is also possible to use [MySQL/MariaDB](/tutorials/mariadb-ubuntu-bionic/) or [PostgreSQL](/tutorials/install-postgresql/). 7. Choose **SQLite** as database type. Leave the other pre-filled settings as they are, they are already set to the required values, and confirm the form. 8. The installation is now ready, and it is time to create the first user. Open `http://:3000/user/sign_up` in a web browser and fill in the required parameters. @@ -123,7 +126,7 @@ While Git was initially developed for software development purposes, it can trac The first user becomes automatically **admin** of the Gitea instance. 9. Once the form has been submitted, you are logged into your Gitea account: - + You can now configure your profile and begin to host code on your instance. diff --git a/tutorials/sem-terraform/index.mdx b/tutorials/sem-terraform/index.mdx index 7de37c29e9..ae4964f2a2 100644 --- a/tutorials/sem-terraform/index.mdx +++ b/tutorials/sem-terraform/index.mdx @@ -14,6 +14,8 @@ dates: validation: 2025-06-19 posted: 2024-06-03 --- +import image from './assets/scaleway-db-secret.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -112,6 +114,6 @@ examples/ 1. Click **Secret Manager** in the Security and Identity section of the [Scaleway console](https://console.scaleway.com/) side menu. 2. Click the `database_secret` secret. - + 3. Click the **Versions** tab. 4. Click next to the secret version. Your database's credentials display. diff --git a/tutorials/send-emails-with-serverless-and-tem/index.mdx b/tutorials/send-emails-with-serverless-and-tem/index.mdx index c43eb9f208..e9ef56579c 100644 --- a/tutorials/send-emails-with-serverless-and-tem/index.mdx +++ b/tutorials/send-emails-with-serverless-and-tem/index.mdx @@ -15,6 +15,9 @@ dates: validation: 2025-02-11 posted: 2023-04-27 --- +import image from './assets/scaleway-sign-in-super-website.webp' +import image2 from './assets/scaleway-tem-email.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -97,8 +100,8 @@ In the `tutorial-tem-serverless-terraform` directory, you will find three folder 1. Click the link that displays next to the `url` output. You are redirected to your newly-created website. 2. Enter your username in the **Username** field. 3. Enter your recipient's email address in the **Email address** field. For the purposes of this tutorial, we recommend you enter your own email address. - + 4. Click **Sign in**. 5. Log in to your email address. Your email titled **Welcome to my cool product!** displays in your mailbox. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/send-sms-iot-device-twilio/index.mdx b/tutorials/send-sms-iot-device-twilio/index.mdx index bc96ef6315..441add5a02 100644 --- a/tutorials/send-sms-iot-device-twilio/index.mdx +++ b/tutorials/send-sms-iot-device-twilio/index.mdx @@ -12,6 +12,11 @@ dates: validation: 2025-04-22 posted: 2020-10-13 --- +import image from './assets/scaleway-twilio-signup.webp' +import image2 from './assets/scaleway-twilio-welcome-dashboard.webp' +import image3 from './assets/scaleway-twilio-get-phone-number.webp' +import image4 from './assets/scaleway-twilio-try-sms.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -41,15 +46,15 @@ We are going to do things in reverse order: ## Getting Twilio credentials 1. Create a Twilio account on [their website](https://www.twilio.com). - + 2. Validate your email address and your phone number to finish to sign-up process. 3. If you want to add another verified phone number, go to [Verified Caller IDs](https://www.twilio.com/console/phone-numbers/verified). On your project's dashboard, start by getting a phone number: - + - + 4. Head to the [Messaging / Setting Started](https://www.twilio.com/console/sms/getting-started/build) page and click `Show your Auth Token`. In the text area below you should see something like: @@ -61,7 +66,7 @@ We are going to do things in reverse order: -u : ``` - + 5. Write down the `From` and `To` phone numbers, along with your `Account ID` and `Auth Token`, we will need these in the Serverless Function. That's it for Twilio, let's proceed to the Serverless Function setup. diff --git a/tutorials/sentry-error-tracking/index.mdx b/tutorials/sentry-error-tracking/index.mdx index 55f39d8e4b..879a8c7f5a 100644 --- a/tutorials/sentry-error-tracking/index.mdx +++ b/tutorials/sentry-error-tracking/index.mdx @@ -13,6 +13,9 @@ dates: validation: 2025-03-27 posted: 2018-06-07 --- +import image from './assets/scaleway-sentry_login.webp' +import image2 from './assets/scaleway-sentry_dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -120,7 +123,7 @@ In this tutorial, we will install Sentry on an [Ubuntu Jammy Jellyfish (22.04 LT docker-compose up -d ``` 8. Test the installation by pointing your web browser to `http://:9000`. The Sentry login displays. - + ## Configuring a reverse proxy @@ -258,7 +261,7 @@ We disable direct access to the Sentry application, running on port `9000` for s 1. Connect from a browser: `https://sentry.example.com/` once the installation completes. 2. Log in with the user created during the installation. 3. Provide additional information and parameters. The Sentry Dashboard displays: - + 4. Click **Projects** > **New Project** to create a new project. Your Sentry server is running now, and you can integrate it with your applications. You can also add additional features by adding different [Plugins](https://docs.sentry.io/server/plugins/) into Sentry. diff --git a/tutorials/set-up-spf-dkim-for-dns-providers/index.mdx b/tutorials/set-up-spf-dkim-for-dns-providers/index.mdx index 5ab514810c..ce5ec6cea5 100644 --- a/tutorials/set-up-spf-dkim-for-dns-providers/index.mdx +++ b/tutorials/set-up-spf-dkim-for-dns-providers/index.mdx @@ -13,6 +13,14 @@ dates: validation: 2025-01-06 posted: 2022-11-07 --- +import image from './assets/scaleway_dkim_record_name.webp' +import image2 from './assets/scaleway_dkim_value_tuto.webp' +import image3 from './assets/scaleway_dns_cloudflare.webp' +import image4 from './assets/scaleway_dkim_record_name.webp' +import image5 from './assets/scaleway_dkim_value_tuto.webp' +import image6 from './assets/scaleway_dkim_record_name.webp' +import image7 from './assets/scaleway_dkim_value_tuto.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -49,10 +57,10 @@ In this tutorial, you will learn how to set up [SPF](/transactional-email/concep 1. Click **Add** in the **DNS Records** section. 2. Select **TXT** in the **Type** drop-down list. 3. Copy the name that displays in the [Scaleway console](https://console.scaleway.com/transactional-email/domains/create). - + 4. Paste it in the **Name** section. 5. Copy the value that displays in the console. - + 6. Paste the value you have copied into the **Value** section. 7. Select **1 Hour** in the **TTL** section. 8. Click the **Save** button. @@ -71,7 +79,7 @@ In this tutorial, you will learn how to set up [SPF](/transactional-email/concep 1. Log in to your [Cloudflare](https://www.cloudflare.com) account. 2. Click the domain you want to configure. 3. Click the **DNS** icon. - + ### Setting up SPF for Cloudflare @@ -90,10 +98,10 @@ In this tutorial, you will learn how to set up [SPF](/transactional-email/concep 1. Click the **Add record** button. 2. Select **TXT** in the **Type** drop-down list. 3. Copy the name that displays in the [Scaleway console](https://console.scaleway.com/transactional-email/domains/create). - + 4. Paste the value you have copied into the **Name** section. 5. Copy the value that displays in the console. - + 6. Paste the value you have copied into the **Content** section. 7. Click **Save**. @@ -130,10 +138,10 @@ In this tutorial, you will learn how to set up [SPF](/transactional-email/concep 1. Click **ADD NEW RECORD**. 2. Select **TXT Record** in the **Type** drop-down list. 3. Copy the name that displays in the [Scaleway console](https://console.scaleway.com/transactional-email/domains/create). - + 4. Paste it in the **Host** section. 5. Copy the value that displays in the console. - + 6. Paste the value you have copied into the **Value** section. 7. Click the **SAVE ALL CHANGES** button. diff --git a/tutorials/set-up-yunohost-debian/index.mdx b/tutorials/set-up-yunohost-debian/index.mdx index f89e68a1a1..4dbed830c8 100644 --- a/tutorials/set-up-yunohost-debian/index.mdx +++ b/tutorials/set-up-yunohost-debian/index.mdx @@ -12,6 +12,12 @@ dates: validation: 2025-04-08 posted: 2019-02-27 --- +import image from './assets/scaleway-yunohost_01.webp' +import image2 from './assets/scaleway-yunohost_09.webp' +import image3 from './assets/scaleway-yunohost_10.webp' +import image4 from './assets/scaleway-yunohost_11.webp' +import image5 from './assets/scaleway-yunohost_12.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -62,7 +68,7 @@ Yunohost is an open-source solution designed for the administration of a persona ``` Once completed, perform the initial configuration from the web interface by typing in the address bar of your web browser the **public IP** address of your Instance. 4. A warning may appear in your browser, as the SSL certificate of Yunohost is self-signed: - + Click **Advanced** to proceed to the site, which will display the post-installation interface. Click **Begin** to continue. 5. Set the main domain for the Yunohost Instance. You can either add a domain or subdomain, request a free subdomain from the Yunohost project, or opt for a domain for local usage/testing only. Then click **Next**. @@ -74,7 +80,7 @@ To use the server, it is recommended to create a user. It will have an e-mail ad Go to the admin interface of Yunohost and click **Users** > **New User**. Fill in the required information for the new user: - + ### Installing an application @@ -83,10 +89,10 @@ Yunohost comes with a bunch of pre-packaged applications that can easily be inst Install a webmail application to write and read emails of the previously created user directly in a web browser: 1. Go to the admin interface of Yunohost and click **Applications** to land on the applications list: - + 2. Scroll down to **Roundcube** and click **Install** to install a Webmail client. Fill in the required details for the application and click **Install** to launch the installation of the tool: - + 3. Once installed go to `yourdomain.tld/webmail` to connect to the Webmail interface to read and write emails: - + The basic installation of Yunohost is done now, it is possible to install other applications like a WordPress blog, a torrent application, and much more to have a personal server. \ No newline at end of file diff --git a/tutorials/setting-up-tunnel/index.mdx b/tutorials/setting-up-tunnel/index.mdx index 4972fbf6cd..035561956c 100644 --- a/tutorials/setting-up-tunnel/index.mdx +++ b/tutorials/setting-up-tunnel/index.mdx @@ -13,12 +13,14 @@ dates: validation: 2025-04-08 posted: 2019-08-22 --- +import image from './assets/scaleway-gre-private-tunnel.webp' + import Requirements from '@macros/iam/requirements.mdx' A GRE tunnel allows you to connect [Scaleway Instances](https://www.scaleway.com/en/virtual-instances/) with [Scaleway Dedibox dedicated servers](https://www.scaleway.com/en/dedibox/) and vice versa to exchange files over a virtual network connection that passes through the public internet. - + The [Generic Routing Encapsulation (GRE)](https://en.wikipedia.org/wiki/Generic_Routing_Encapsulation) protocol is designed as a tunneling tool to carry any [OSI Layer 3 protocol](https://en.wikipedia.org/wiki/Network_layer) over an IP network. It creates a point-to-point connection like a virtual Private Network (VPN) but without adding lots of latency or overhead. diff --git a/tutorials/setup-ampere-ai-framework-arm-instances/index.mdx b/tutorials/setup-ampere-ai-framework-arm-instances/index.mdx index 34b1b1bdc8..fb88268773 100644 --- a/tutorials/setup-ampere-ai-framework-arm-instances/index.mdx +++ b/tutorials/setup-ampere-ai-framework-arm-instances/index.mdx @@ -13,6 +13,8 @@ dates: posted: 2024-02-09 validation_frequency: 24 --- +import image from './assets/scaleway-ampere-ai-pytorch.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -67,7 +69,7 @@ In this tutorial, we will walk through the process of setting up and using Amper docker run --privileged=true --name ampere-torch --network host -it amperecomputingai/pytorch:latest ``` The selected image will be automatically pulled, and a Docker container will be initialized. You should see the Ampere AI ASCII art indicating successful initialization. - + 4. Import your AI library of choice in Python to verify the success of the installation. ```bash python3 -c "import torch" diff --git a/tutorials/setup-elastic-metal-proxmox-cluster-with-private-networks/index.mdx b/tutorials/setup-elastic-metal-proxmox-cluster-with-private-networks/index.mdx index 8404b2d020..8dabb1a4b3 100644 --- a/tutorials/setup-elastic-metal-proxmox-cluster-with-private-networks/index.mdx +++ b/tutorials/setup-elastic-metal-proxmox-cluster-with-private-networks/index.mdx @@ -13,6 +13,15 @@ dates: validation: 2025-05-12 posted: 2022-01-10 --- +import image from './assets/scaleway-proxmox-image.webp' +import image2 from './assets/scaleway-proxmox-network-dashboard.webp' +import image3 from './assets/scaleway-proxmox-vlan-details.webp' +import image4 from './assets/scaleway-proxmox-cluster-overview.webp' +import image5 from './assets/scaleway-proxmox-create-cluster.webp' +import image6 from './assets/scaleway-proxmox-cluster-list.webp' +import image7 from './assets/scaleway-proxmox-join-cluster.webp' +import image8 from './assets/scaleway-proxmox-cluster-created.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -34,7 +43,7 @@ Proxmox Virtual Environment (Proxmox VE) is a server virtualization platform, ba 1. Select your Elastic Metal server by clicking on **Elastic Metal** in the **Compute** section of the side menu of the Scaleway console. 2. Choose the server you want to install from the list and click its name to see the server dashboard. 3. Click **Install** and select **Proxmox VE 7** from the list of available images. - + 4. Enter your credentials. The service username is `root`. The service password must have eight characters minimum. 5. Enter a name and optional tags for your server. 6. Toggle the switch to enable the **Private Networks** feature for the server. @@ -66,9 +75,9 @@ Instead of [configuring the Private Network interface directly from your server' 1. Click the Proxmox host in the data center menu on the left. The server's dashboard displays. 2. Click **Network** in the **System** section of the menu. The network dashboard displays. 3. Click **Create** > **Linux VLAN**. - + 4. Enter the VLAN details for your Private Network: - + * **Name**: The name of your primary network interface followed by a dot and the VLAN ID of your Private Network (e.g. `eno1.1918` for the primary network interface `eno1` and the VLAN ID `1918`) * **(Optional) IPv4/CIDR**: The private IP of your server will be configured through DHCP if IPAM is configured correctly. Optionally, set the IP address of the machine in your Private Network followed by its CIDR netmask (e.g. `192.168.1.101/24`). @@ -119,18 +128,18 @@ Instead of [configuring the Private Network interface directly from your server' ## Creating a cluster 1. Click **Cluster** in the data center view of the Promox interface of your first node. The cluster dashboard displays. - + 2. Click **Create cluster**. 3. Enter a name for the cluster and select your Private Network as the cluster network. Then click **Create**. - + 4. Select the cluster in the list and click **Join Information**. The cluster join information displays. - + 5. Click **Copy Information** to copy the cluster join information into the clipboard. 6. Go to the Proxmox interface of your second node and click **Cluster** to enter the cluster configuration from the data center view of the machine. 7. Click **Join cluster** and paste the cluster join information in the form. 8. Enter your first node's `root` password and click **Join** to link the machine to the cluster. - + The second node appears now in the cluster in the Data center view of Proxmox. You can manage both machines using a single interface. The communication between members of the cluster is entirely in your Private Network, ensuring the highest level of security and the lowest latency. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/setup-jupyter-notebook/index.mdx b/tutorials/setup-jupyter-notebook/index.mdx index 5447795e86..0ae1cc3601 100644 --- a/tutorials/setup-jupyter-notebook/index.mdx +++ b/tutorials/setup-jupyter-notebook/index.mdx @@ -14,6 +14,19 @@ dates: validation: 2025-03-27 posted: 2019-07-19 --- +import image from './assets/scaleway-login_mac.webp' +import image2 from './assets/scaleway-putty.webp' +import image3 from './assets/scaleway-login_win.webp' +import image4 from './assets/scaleway-token.webp' +import image5 from './assets/scaleway-login_mac.webp' +import image6 from './assets/scaleway-setup_password.webp' +import image7 from './assets/scaleway-jupyter_dashboard.webp' +import image8 from './assets/scaleway-upload_create_notebook.webp' +import image9 from './assets/scaleway-new_notebook.webp' +import image10 from './assets/scaleway-jupyter_editor.webp' +import image11 from './assets/scaleway-jupyter_markdown.webp' +import image12 from './assets/scaleway-running_notebook.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -73,7 +86,7 @@ To connect to the Jupyter Notebook from a remote client, an SSH tunnel is requir Use the option `-f` in the command above to move SSH into the background, so the local terminal remains usable. 2. Open a web browser and go to `http://localhost:7777`. The Jupyter web interface should display: - + ### From a Windows client @@ -85,37 +98,37 @@ To establish an SSH tunnel on a Windows computer, you need to have [PuTTY](https - Fill in the **Destination**: `localhost:8888` - Click **Add** to add the configuration. Once done the forwarded port appears in the **Forwarded ports** list. - + 3. Go back to the main window of PuTTY and enter the connection details of the Instance, then click **Open** to log into it. 4. Keep the PuTTY window open in the background and launch a web browser. Go to `http://localhost:7777` to connect to the Jupyter Notebook: - + ## Setting a password for Jupyter Notebook 1. To access the Jupyter Notebook, an access token is required. It is displayed in the startup messages of the application: - + 2. Copy the access token and open the URL `http://localhost:7777` in a web browser: - + 3. Scroll down to the password section of the page and paste the token into the corresponding form. Then enter a safe password and click **Log in and set new password** to take the changes into effect: - + If an error 500 is displayed after setting the password, manually create a directory for Jupyter to store its configuration files: `mkdir /root/.jupyter` 4. You are now logged into Jupyter Notebook. The Dashboard displays: - + ## Using Jupyter Notebook 1. You can now create a new or import an existing Jupyter Notebook by clicking on **Upload** or **New**: - + 2. Create a new **Python 3** notebook by clicking on the corresponding line in the menu: - + 3. The Jupyter Editor displays. The first _cell_ is already in place and uses the kernel (Python3) that was chosen when starting the notebook. Write your Python 3 code in the cell. To run the content of a cell click **Play**: - + 4. It is also possible to edit Markdown content in a Cell. To do so, change the status of a cell to **Markdown** by choosing it from the drop-down menu: - + 5. A running notebook is marked with a green icon. To suspend its execution, tick the corresponding box and click **Shutdown**: - + For more information and advanced configuration of Jupyter Notebook, refer to the [official documentation](https://jupyter-notebook.readthedocs.io/en/stable/examples/Notebook/examples_index.html). \ No newline at end of file diff --git a/tutorials/setup-k8s-cluster-rancher/index.mdx b/tutorials/setup-k8s-cluster-rancher/index.mdx index 39bd8b87bb..642eee3eb7 100644 --- a/tutorials/setup-k8s-cluster-rancher/index.mdx +++ b/tutorials/setup-k8s-cluster-rancher/index.mdx @@ -14,6 +14,22 @@ dates: validation: 2025-03-06 posted: 2019-08-12 --- +import image from './assets/scaleway-rancher_instances.webp' +import image2 from './assets/scaleway-rancher_instant_apps.webp' +import image3 from './assets/scaleway-rancher_password.webp' +import image4 from './assets/scaleway-rancher_dashboard_empty.webp' +import image5 from './assets/scaleway-rancher_add_cluster.webp' +import image6 from './assets/scaleway-rancher_cluster_options.webp' +import image7 from './assets/scaleway-rancher_node_run.webp' +import image8 from './assets/scaleway-rancher_dashboard.webp' +import image9 from './assets/scaleway-rancher_menu.webp' +import image10 from './assets/scaleway-rancher_dashboard.webp' +import image11 from './assets/scaleway-deploy_workload.webp' +import image12 from './assets/scaleway-nginx_demo_app.webp' +import image13 from './assets/scaleway-workload_edit.webp' +import image14 from './assets/scaleway-upgrade_service.webp' +import image15 from './assets/scaleway-workload_updated.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -33,9 +49,9 @@ The Rancher UI makes it easy to manage secrets, roles, and permissions. It allow 1. Click **Instances** in the **Compute** section of the side menu. The [Instances page](https://console.scaleway.com/instance/servers) displays. 2. Click **Create Instance**. The [Instance creation wizard](https://console.scaleway.com/instance/servers/create) displays. 3. To deploy Instances with [Docker](https://www.docker.com/) preinstalled, click **+ Create Instance**: - + 4. Click the **InstantApps** tab, and choose the **Docker** image: - + 5. Choose a region, type, and name for your Instance (i.e., `rancher1`), then click **Create Instance**. 6. Repeat these steps two more times to spin up a total of three Instances running Docker. @@ -51,36 +67,36 @@ The Rancher UI makes it easy to manage secrets, roles, and permissions. It allow ## Configuring Rancher 1. Once Rancher is installed, open a web browser and navigate to your Rancher domain (e.g., `https://rancher.example.com`). You will see the Rancher setup page: - + 2. Enter a password and its confirmation, and click **Continue** to proceed with the installation. 3. The empty Rancher dashboard will display: - + ## Creating a cluster 1. In the Rancher UI, click **Add Cluster** to start configuring your new Kubernetes cluster. 2. The cluster creation page will appear. Click **Custom** to deploy the cluster on the already launched Scaleway Instances: - + 3. Name the cluster, choose the desired Kubernetes version, and select **None** for the cloud provider (since this is a custom setup). - + 4. Assign roles for each Instance in the cluster: - **Control plane**: Manages the state and configuration of the cluster. - **etcd**: Stores the state of the entire cluster (recommended to run 3 Instances for redundancy). - **Worker**: Runs your containers/pods and handles the workload. Once the roles are assigned, run the command shown on the page to install the necessary software on each Instance. - + 5. Once all Instances are ready, click **Done** to initialize the cluster. 6. When the cluster is initialized, the dashboard will display: - + ## Deploying a cluster workload Now that the cluster is set up, let us deploy your first pod. A [pod](https://kubernetes.io/docs/concepts/workloads/pods/pod-overview/) is the smallest deployable unit in Kubernetes. 1. In the top navigation bar, click **Global**, select your cluster, then choose **Default** from the drop-down menu: - + 2. On the clusters dashboard, click **Deploy**: - + 3. Enter the details for the workload: - **Name**: A friendly name for your workload. - **Docker Image**: Enter `nginxdemos/hello` to deploy a demo Nginx application. @@ -89,21 +105,21 @@ Now that the cluster is set up, let us deploy your first pod. A [pod](https://ku - **Protocol**: `TCP` - **As a**: `NodePort` - **Listening port**: `30000` - + 4. Click **Launch** to create the workload. 5. After deployment, you can access the Nginx demo application by visiting `http://:30000/` in your web browser: - + ### Scaling the cluster workload Currently, the Nginx demo app is running on a single pod. Let’s scale it to multiple pods. 1. From the cluster dashboard, click the ellipsis (**…**) next to your deployment and select **Edit**: - + 2. Set the number of replicas for the workload to **3** to scale to 3 pods: - + 3. Click **Save**. Rancher will update the Kubernetes deployment to create 3 replicas of the pod. - + 4. To access the application running on the second Instance, visit `http://:30000/` in your browser. The Nginx demo application should display. ## Security considerations and best practices diff --git a/tutorials/setup-lamp-stack-ubuntu2204/index.mdx b/tutorials/setup-lamp-stack-ubuntu2204/index.mdx index 74ed486b1b..1a30eaffb9 100644 --- a/tutorials/setup-lamp-stack-ubuntu2204/index.mdx +++ b/tutorials/setup-lamp-stack-ubuntu2204/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-04-22 posted: 2022-04-28 --- +import image from './assets/scaleway-lamp-php81.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -164,7 +166,7 @@ Apache stores the configuration of virtual hosts configuration files. All availa ?> ``` 3. Save the file and point your web browser to `http://example.com/phpinfo.php` (replacing `example.com` with your domain name). When you see an output like the following, it means PHP is set up correctly: - + ## Securing your site with Let's Encrypt diff --git a/tutorials/setup-minecraft/index.mdx b/tutorials/setup-minecraft/index.mdx index bb51bb5573..8c59b251be 100644 --- a/tutorials/setup-minecraft/index.mdx +++ b/tutorials/setup-minecraft/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-03-27 posted: 2019-11-15 --- +import image from './assets/scaleway-minecraft_game.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -163,4 +165,4 @@ When your server is up and running, connect it to the Minecraft game client. 3. Click **Add Server** and enter a name for your server and the public IP address of your Instance. 4. Your server is now listed in the servers list. Click the server and then **Join Server** to connect to it. 5. Congratulations! You are now connected to your own Minecraft server: - + diff --git a/tutorials/setup-moodle/index.mdx b/tutorials/setup-moodle/index.mdx index 4006457897..ba0d0d46e2 100644 --- a/tutorials/setup-moodle/index.mdx +++ b/tutorials/setup-moodle/index.mdx @@ -13,6 +13,16 @@ dates: validation: 2025-04-22 posted: 2020-06-16 --- +import image from './assets/scaleway-language.webp' +import image2 from './assets/scaleway-paths.webp' +import image3 from './assets/scaleway-database.webp' +import image4 from './assets/scaleway-database-settings.webp' +import image5 from './assets/scaleway-confirm-conditions.webp' +import image6 from './assets/scaleway-server-checks.webp' +import image7 from './assets/scaleway-installation-success.webp' +import image8 from './assets/scaleway-configure-main-admin-account.webp' +import image9 from './assets/scaleway-site-home.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -425,34 +435,34 @@ By default, the connection between your computer and the server is not encrypted Access your Moodle interface via a web browser using your domain name or IP address. The Moodle setup wizard displays. 1. Choose a language and click **Next**. - + 2. Check and confirm Moodle's directory paths on your server by clicking **next**. - + 3. Select a database driver when prompted: **MariaDB (native/mariadb)**, then proceed. - + 4. Insert the previously defined **Database user** and **Database password** in the corresponding fields and click next. - + Moodle's terms and conditions display. 5. Click **Continue** if you **"Have read these conditions and understood them"**. - + A server checklist displays and informs you whether your server environment meets the minimal requirements for Moodle to run. - + 6. Click **Next** to continue if the status of all requirements is flagged as **OK**. If they are not, click the **Report** link of the requirement in question for more information. Moodle runs a final installation process which might take a couple of minutes. 7. Scroll to the bottom of the page and click **Continue** once the installation process is successfully completed, scroll. - + The following page asks you to configure the Main Administrator Account (root). 8. Fill in the required fields and click **Update profile**. - + 9. Complete installation by entering the **Full site name** and the **Short name for site**. You may also insert a summary and manage authentication and timezones. Click **Save changes** to conclude and you are redirected to your Moodle homepage. - + Your Moodle learning platform is now configured. You can start by adding courses and students. For more information about how to configure and use Moodle after installation, refer to the official [documentation](https://docs.moodle.org/39/en/Main_page). \ No newline at end of file diff --git a/tutorials/setup-nginx-reverse-proxy-s3/index.mdx b/tutorials/setup-nginx-reverse-proxy-s3/index.mdx index 11b6212adb..c1b965aa70 100644 --- a/tutorials/setup-nginx-reverse-proxy-s3/index.mdx +++ b/tutorials/setup-nginx-reverse-proxy-s3/index.mdx @@ -13,6 +13,9 @@ dates: validation: 2025-01-22 posted: 2020-06-04 --- +import image from './assets/scaleway-object-storage-with-nginx.webp' +import image2 from './assets/scaleway-nginx-with-cached-data.webp' + import Requirements from '@macros/iam/requirements.mdx' + When a client initiates an HTTP request to the Nginx proxy server, the request to retrieve a bucket is directly forwarded to the Object Storage bucket. The Object Storage platform promptly responds by delivering the requested object to Nginx, which efficiently relays it to the client. To further enhance performance and reduce the load on the bucket, frequently accessed objects can be cached locally within Nginx. - + In this setup, requested objects are temporarily stored in Nginx's cache. Consequently, when a client requests an object, it is delivered directly from Nginx without requiring a forward request to the Object Storage platform. This caching mechanism significantly improves delivery speed and resource utilization. diff --git a/tutorials/silence-grafana-alerts/index.mdx b/tutorials/silence-grafana-alerts/index.mdx index 613669e2fb..bfee31df21 100644 --- a/tutorials/silence-grafana-alerts/index.mdx +++ b/tutorials/silence-grafana-alerts/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-06-16 posted: 2025-06-16 --- +import image from './assets/scaleway-silenced-alert.webp' +import image2 from './assets/scaleway-unsilence-button.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -38,11 +41,11 @@ This page shows you how to temporarily mute (silence) alerts without disabling t Matchers define which alerts are silenced. Each matcher includes a **Label** (e.g. `alertname`), an **Operator** (`=`, `!=`, `=~`, or `!~`), and a **Value** (e.g. `alert-for-high-cpu-usage`). - + 9. In the **Comment** section, describe why you are configuring the silence. 10. Click **Save silence** to confirm. Your silence displays in the list. To stop silencing an alert, click **Unsilence** under the **Actions** column - + The silence will display in a section named **Expired silences**, and be deleted after 5 days. diff --git a/tutorials/sinatra/index.mdx b/tutorials/sinatra/index.mdx index d83df41590..cbdef99507 100644 --- a/tutorials/sinatra/index.mdx +++ b/tutorials/sinatra/index.mdx @@ -12,6 +12,10 @@ dates: validation: 2025-05-14 posted: 2018-08-17 --- +import image from './assets/scaleway-firstapp.webp' +import image2 from './assets/scaleway-firstindex.webp' +import image3 from './assets/scaleway-chansons.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -94,7 +98,7 @@ gem install rackup puma The response tells us the port that it is running on. This time it is `4567`. 4. Point the browser to `http://server-IP:4567`. - + ## Creating routes @@ -121,7 +125,7 @@ In the example above, The `get '/' do` part of the code is very important. It sa As you notice, when adding the `/index` after the port number, the webpage displays the message entered in the testapp.rb file. - + 3. Change the `get / do` route to the following: ``` get '/' do @@ -189,7 +193,7 @@ The last line redirects to an ERB file which automatically looks for a file call which displays - + ## Available route methods in Sinatra diff --git a/tutorials/sns-instances-notification-system/index.mdx b/tutorials/sns-instances-notification-system/index.mdx index 727b568665..46009b68c8 100644 --- a/tutorials/sns-instances-notification-system/index.mdx +++ b/tutorials/sns-instances-notification-system/index.mdx @@ -13,6 +13,11 @@ dates: validation: 2025-04-30 posted: 2024-03-08 --- +import image from './assets/publication.webp' +import image2 from './assets/subscription.webp' +import image3 from './assets/subscriber-home.webp' +import image4 from './assets/scw-publ-home.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -24,7 +29,7 @@ It involves two Scaleway [Instances](https://www.scaleway.com/en/virtual-instanc - one simulates CPU load to trigger notifications, acting as the publisher server, - the other serves as the receiver with an HTTP endpoint: the SNS topic's subscriber server. - + We focus on setting up SNS with maximum automation, therefore all the infrastructure is handled with Terraform/OpenTofu. To simplify this process, the web applications for each Instance are downloaded through a Docker image. @@ -141,7 +146,7 @@ Continue to add code to your `main.tf` file as shown below to create the SNS top ## Create the subscriber and publisher Instances We continue to add to our `main.tf` file to create the subscriber and publisher Instances, and create a subscription to the topic: - + 1. Create the [security group](/instances/concepts/#security-group) that will serve both Instances: ``` @@ -303,11 +308,11 @@ We are now ready to run the command to create the infrastructure and resources w 2. From the [Instances section](https://console.scaleway.com/instance/servers) of the Scaleway console, access and copy the public IP address of the Instance we created via Terraform/OpenTofu (identifiable from its name: `subscriber_server`). 3. In a browser, go to the home page of your subscriber Instance by inserting the IP address copied in the previous step into the following address: `http://:8081`. 4. Still in the browser, click `Confirm subscription` to confirm the subscription to the SNS topic we created. You are directed to an AWS page that confirms your subscription. If you have an error because the URL hasn't been received, you can reload the page. It should take less than 30 seconds to appear. - + 5. Go back to the Instance subscriber's home page at `http://:8081` and click `Notifications`. Keep this page open while you carry out the next steps in a new browser tab. 6. Back in the Scaleway console, retrieve and copy the IP address of the Instance called `publisher_server`. 7. Go to the home page of your publisher server: `http://:8081`. - + 8. Click on a CPU behavior, and check the notification page of your subscriber server. A notification about the behavior should have appeared. Once you're done testing, you can apply `terraform destroy` to clean and remove the project. diff --git a/tutorials/socket-io/index.mdx b/tutorials/socket-io/index.mdx index 60b3d070c5..17b2b4ac38 100644 --- a/tutorials/socket-io/index.mdx +++ b/tutorials/socket-io/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-04-22 posted: 2018-07-05 --- +import image from './assets/scaleway-Hello_world.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -140,7 +142,7 @@ Express is a minimal, flexible Node.js web application framework. Install it alo 2. Open a browser and go to `http://:4200`. You should see the chat interface. - + ## Enhancing the chat server with client-server interaction diff --git a/tutorials/store-s3-cyberduck/index.mdx b/tutorials/store-s3-cyberduck/index.mdx index f982e2d62a..952ec577ac 100644 --- a/tutorials/store-s3-cyberduck/index.mdx +++ b/tutorials/store-s3-cyberduck/index.mdx @@ -13,6 +13,8 @@ dates: validation: 2025-05-19 posted: 2018-06-04 --- +import image from './assets/scaleway-cyberduckprofile.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -77,7 +79,7 @@ Cyberduck allows you to create, list, and delete buckets, download, upload, and 2. Save the file and double-click it to open Cyberduck. 3. Fill `` with your access key and `` with your secret key. - + You can now create a bucket and store objects inside. diff --git a/tutorials/store-s3-transmit/index.mdx b/tutorials/store-s3-transmit/index.mdx index 351c53fdeb..5ab947743e 100644 --- a/tutorials/store-s3-transmit/index.mdx +++ b/tutorials/store-s3-transmit/index.mdx @@ -12,6 +12,10 @@ dates: validation: 2025-05-19 posted: 2018-06-04 --- +import image from './assets/scaleway-transmit-00.webp' +import image2 from './assets/scaleway-transmit-01.webp' +import image3 from './assets/scaleway-transmit-02.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -43,7 +47,7 @@ It provides a clean and straightforward interface to create, list, and delete bu 1. Open the application. On the right-hand side, you see the remote server list. 2. Click `+` to create a new server profile. 3. Choose **Amazon S3** in the list of service types and name the profile. Confirm by clicking **Next**: - + 4. Enter the following information in the form and **Save** it: - **Address:** `s3.REGION.scw.cloud` - **Port:** `443` @@ -55,9 +59,9 @@ It provides a clean and straightforward interface to create, list, and delete bu Edit the **Address** and **Root URL** parameters to the region of your bucket. It can either be `fr-par` (Paris, France), `nl-ams` (Amsterdam, The Netherlands), or `pl-waw`(Warsaw, Poland). - + 5. Log in to the server: - + You can now create a bucket and store objects inside. A bucket name must contain only alphanumeric and lowercase characters. \ No newline at end of file diff --git a/tutorials/store-wp-mediacloud-s3/index.mdx b/tutorials/store-wp-mediacloud-s3/index.mdx index f3ac495728..b2312ef7a9 100644 --- a/tutorials/store-wp-mediacloud-s3/index.mdx +++ b/tutorials/store-wp-mediacloud-s3/index.mdx @@ -13,6 +13,19 @@ dates: validation: 2025-05-19 posted: 2019-02-13 --- +import image from './assets/scaleway-mediacloud_01.webp' +import image2 from './assets/scaleway-mediacloud_02.webp' +import image3 from './assets/scaleway-mediacloud_03.webp' +import image4 from './assets/scaleway-mediacloud_04.webp' +import image5 from './assets/scaleway-mediacloud_05.webp' +import image6 from './assets/scaleway-mediacloud_06.webp' +import image7 from './assets/scaleway-mediacloud_07.webp' +import image8 from './assets/scaleway-mediacloud_08.webp' +import image9 from './assets/scaleway-mediacloud_09.webp' +import image10 from './assets/scaleway-mediacloud_10.webp' +import image11 from './assets/scaleway-mediacloud_11.webp' +import image12 from './assets/scaleway-mediacloud_12.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -35,22 +48,22 @@ Media Cloud can be installed directly from the admin interface of your WordPress 1. Enter the **Plugins** section in the admin interface of WordPress, then click **New Plugin** and search for **Media Cloud** (The exact plugin name is: Media Cloud for Bunny CDN, Amazon S3, Cloudflare R2, Google Cloud Storage, DigitalOcean and more). 2. Click **Install Now** to install the plugin into WordPress: - + 3. Once installed, activate the plugin by clicking on **Activate**: - + ## Configuring Media Cloud 1. From the plugin overview page, make sure that the **Cloud Storage** switch is toggled on (1) and click **Setup Wizard** (2) to launch the Media Cloud configuration: - + 2. The setup wizard displays. Click **Next** to continue: - + 3. Choose the **S3 Compatible** storage option to continue: - + 4. Click **Next** to proceed with the configuration: - + 5. Enter the connection credentials of your Object Storage bucket: - + - **Access key**: Your Scaleway [access key](/organizations-and-projects/how-to/create-ssh-key/) - **Secret key**: Your Scaleway [secret key](/organizations-and-projects/how-to/create-ssh-key/) @@ -62,16 +75,16 @@ Media Cloud can be installed directly from the admin interface of your WordPress - `https://s3.pl-waw.scw.cloud` for Warsaw (Poland) Click **Next** to continue with the configuration. 6. The setup wizard will check your configuration. Click **Start tests** to launch the validation of your credentials: - + 7. Several tests are done to validate that everything is working well. If everything succeeds, click **Next** to continue: - + 8. The setup is complete now. Click **Advanced Settings** to exit the wizard and display the advanced settings. Normally nothing needs to be configured there, and you can go to your media gallery from there: - + 9. Upload your media files using the WordPress upload feature. They will be uploaded automatically into your Object Storage bucket. 10. Once uploaded, you will notice a small cloud icon next to each media file, indicating that it is stored in the Object Storage bucket: - + 11. To see details of each file, click it. WordPress displays details about the file, such as the bucket name, the media dimensions, and the complete storage URL: - + All newly uploaded files are automatically stored in the Object Storage bucket, and they can be used from the Media Library like any other media when writing a blog post. diff --git a/tutorials/strapi/index.mdx b/tutorials/strapi/index.mdx index 68e2d2868c..f740c3d66b 100644 --- a/tutorials/strapi/index.mdx +++ b/tutorials/strapi/index.mdx @@ -13,6 +13,21 @@ dates: validation: 2025-05-02 posted: 2020-11-30 --- +import image from './assets/scaleway-create-admin.webp' +import image2 from './assets/scaleway-create-blog.webp' +import image3 from './assets/scaleway-select_collection_fields.webp' +import image4 from './assets/scaleway-add-text-field.webp' +import image5 from './assets/scaleway-add-title.webp' +import image6 from './assets/scaleway-select_collection_fields.webp' +import image7 from './assets/scaleway-add-text-field.webp' +import image8 from './assets/scaleway-add-content.webp' +import image9 from './assets/scaleway-blog-created.webp' +import image10 from './assets/scaleway-blogs-click.webp' +import image11 from './assets/scaleway-hello-world-blog.webp' +import image12 from './assets/scaleway-roles-permissions.webp' +import image13 from './assets/scaleway-permissions-checked.webp' +import image14 from './assets/scaleway-accessing-content.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -117,43 +132,43 @@ In this step, we will use the Strapi dashboard to configure Strapi for a very si You should see the following: - + 2. Complete the form with your desired information to create an admin user, then click **Let's Start**. Next, we will essentially define a new database to hold our blog content. 3. Click **Create Your First Content Type**. Alternatively, click **Content-Type Builder** and **+ Create new collection type** in the navigation menu. 4. Enter **Blog** as the display name (UID will auto-complete), and click **Continue**: - + The following screen displays: - + Next, we will define the fields for our Blog database. We will add two text fields, one to hold the title of each blog post and one to hold the content of each post: 5. Click **Text**. The following screen displays: - + 6. Enter `Title` in the name field, and click **Add another field**: - + You are taken back to the list of possible field types: - + 7. Click **Text**. The following screen displays: - + 8. Enter **Content** in the name field, and select **Long text** underneath, then click **Finish**: - + 9. A summary of the Blog collection that you have just created displays. Click **Save**: - + Strapi will restart and refresh your dashboard. Now that we have set up the database to hold our blog, we will create a quick "Hello World" blog post. 10. Click **Blog**, which now appears as a **Collection Type** under the **Content Manager** section of the navigation menu: - + 11. Click **Create new entry** in the top right. 12. Enter a title and content of your choice, or use the following 'Hello World' examples. Then click **Save**, followed by **Publish**: - + You can see the published content in the **Published** tab. @@ -161,14 +176,14 @@ In this step, we will use the Strapi dashboard to configure Strapi for a very si The final step is to make the content of our blog publicly available. 13. Click **Settings**, then **Roles** under the **Users and Permissions Plugin** section of the navigation menu. - + 14. Click **Public**. Under **Permissions**, you can see our **Blog** application. 16. Check the **findone** and **find** boxes in the **Blog** application drop-down, to enable the public to find our blog posts. Then click **Save**: - + Now we can access our "Hello World" blog post from the built-in API with the following action: 16. Open a new browser tab, and go to `http:// + You can also retrieve your blog post from the command line by running `curl http://1337/blogs`. diff --git a/tutorials/terraform-quickstart/index.mdx b/tutorials/terraform-quickstart/index.mdx index 1f8c435645..d426afbf5e 100644 --- a/tutorials/terraform-quickstart/index.mdx +++ b/tutorials/terraform-quickstart/index.mdx @@ -14,6 +14,10 @@ hero: assets/scaleway_terraform.webp dates: validation: 2025-05-19 --- +import image from './assets/scaleway-terraform-schema.webp' +import image2 from './assets/scaleway-terraform-scw-instances-list.webp' +import image3 from './assets/scaleway-terraform-scw-security-group.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -30,7 +34,7 @@ HashiCorp [Terraform](http://terraform.io) or [OpenTofu](https://opentofu.org/) The first step is to install Terraform/OpenTofu on a server or on your computer to deploy and manage your resources. Terraform/OpenTofu is installed on a user environment (which can either be your local computer or a remote server used to manage your infrastructures) to push configuration files to your cloud environment. We suggest adding your configuration files to a versioning system like [GitHub](https://www.github.com) or [Bitbucket](https://bitbucket.org/) to manage the versioning of your configurations. - + ### Installation on macOS @@ -335,7 +339,7 @@ To create a first Instance using Terraform/OpenTofu, you need a declarative conf Apply complete! Resources: 3 added, 0 changed, 0 destroyed. ``` 8. Go to the Instances section in your [Scaleway console](https://console.scaleway.com). You can see that the Instance has been created: - + ## Modifying an Instance using Terraform/OpenTofu @@ -471,7 +475,7 @@ We now have a first Instance up and running. Next, we will modify it by restrict Only 'yes' will be accepted to approve. ``` 3. Enter `yes` to confirm. Terraform/OpenTofu has created the security group and modified the configuration of the existing Instance by adding it to the newly created group. You can see the group from the Scaleway console and check the rules that have been created: - + ## Adding resources to an infrastructure diff --git a/tutorials/upgrade-managed-postgresql-database/index.mdx b/tutorials/upgrade-managed-postgresql-database/index.mdx index 34acb8fc88..6f1fbb96ab 100644 --- a/tutorials/upgrade-managed-postgresql-database/index.mdx +++ b/tutorials/upgrade-managed-postgresql-database/index.mdx @@ -11,6 +11,9 @@ dates: categories: - postgresql-and-mysql --- +import image from './assets/scaleway-database-information.webp' +import image2 from './assets/scaleway-database-restored.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -60,7 +63,7 @@ There are three steps to completing a manual migration: creating a new PostgreSQ - Installed `curl` on your local computer 1. Retrieve the database ID of your **old** Database Instance. You can find it on the **Database Instance Information** page of your Instance: - + 2. Make a backup of your logical database(s) using the API: ```sh curl -X POST -H "Content-Type: application/json" \ @@ -150,7 +153,7 @@ There are three steps to completing a manual migration: creating a new PostgreSQ Depending on the size of your backup, restoring might take a moment. 3. The database appears in the **Managed Databases** tab of your new Database Instance, once the backup has been imported: - + Optionally, you can verify the status of your database with a tool like [pgAdmin 4](/tutorials/manage-database-instance-pgadmin4/). diff --git a/tutorials/use-container-registry-github-actions/index.mdx b/tutorials/use-container-registry-github-actions/index.mdx index c8bce0b738..8487aa1dda 100644 --- a/tutorials/use-container-registry-github-actions/index.mdx +++ b/tutorials/use-container-registry-github-actions/index.mdx @@ -13,6 +13,9 @@ dates: validation: 2025-05-06 posted: 2023-02-27 --- +import image from './assets/scaleway-container-registry-settings.webp' +import image2 from './assets/scaleway-github-workflow-trigger.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -43,7 +46,7 @@ For your GitHub Action to interact with your Scaleway Container Registry, it is 3. Create a second secret holding your container registry endpoint. You can find your endpoint in your Scaleway Container Registry settings: - + Click **New repository secret** again. In the "name" field, enter `CONTAINER_REGISTRY_ENDPOINT`, and paste your endpoint in the "value" field. @@ -95,7 +98,7 @@ This workflow has one job called **build**, which is set to run on the latest ve The workflow is now ready to be deployed. Commit and push your `build.yml` file, then go back to your repository's home page on GitHub. In the **Actions** tab, you should be able to find your newly created workflow. Click on its name, then on the **Run workflow** menu. Finally, hit the **Run workflow** button. - + Wait a few seconds for the workflow to launch, and you should be able to monitor its run. diff --git a/tutorials/use-managed-redis-with-mysql/index.mdx b/tutorials/use-managed-redis-with-mysql/index.mdx index 3994330877..4cec0a17e3 100644 --- a/tutorials/use-managed-redis-with-mysql/index.mdx +++ b/tutorials/use-managed-redis-with-mysql/index.mdx @@ -12,6 +12,10 @@ dates: validation: 2025-01-02 posted: 2023-11-25 --- +import image from './assets/scaleway-mysql-db-information.webp' +import image2 from './assets/scaleway-mysql-user-information.webp' +import image3 from './assets/scaleway-redis-db-information.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -90,10 +94,10 @@ These components define both the structure of your database schema and how Entit Follow these steps to configure your MySQL database with Entity Framework: 1. Get the public IP and port of your Database Instance. You can locate this information on the **Database Instance Information** page of your Instance in the [Scaleway console](https://console.scaleway.com/rdb/instances), under **Public endpoint**. - + 2. Create a new user for your database, granting administrative rights from the **Users page**. Alternatively, use the default user. - + 3. Generate a connection string for your database using the provided information: ``` @@ -123,7 +127,7 @@ Follow these steps to configure your MySQL database with Entity Framework: Follow these steps to configure your Redis™ cache with Entity Framework: 1. Get the public IP, port, and username for your Redis™ Instance. Locate this information on the **Database Instance Information** page of your Instance in the [Scaleway console](https://console.scaleway.com/redis/clusters), under **Public endpoints**. - + 2. Download the TLS certificate using the button and store it in your project folder. diff --git a/tutorials/using-bucket-website-with-mkdocs/index.mdx b/tutorials/using-bucket-website-with-mkdocs/index.mdx index fea95e0e15..43139b8b0b 100644 --- a/tutorials/using-bucket-website-with-mkdocs/index.mdx +++ b/tutorials/using-bucket-website-with-mkdocs/index.mdx @@ -12,6 +12,12 @@ dates: validation: 2025-04-22 posted: 2024-10-07 --- +import image from './assets/scaleway-mkdocs-files-in-bucket.webp' +import image2 from './assets/scaleway-mkdocs-website-light-mode.webp' +import image3 from './assets/scaleway-mkdocs-website-dark-mode.webp' +import image4 from './assets/scaleway-collapsible-admonition.webp' +import image5 from './assets/scaleway-collapsible-admonition-expanded.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -444,21 +450,21 @@ You will learn to set up MkDocs and configure, preview, and deploy your website. 6. On your local computer, open the `site` folder generated in the previous steps. 7. Select all the files and folders inside your `site` folder and drag and drop them inside your bucket. 8. Select a storage class when prompted and click **Validate storage class** to confirm. Your file architecture should look like the following. - + 9. Once the transfer of your files is complete, click the **Bucket settings** tab and scroll down to the **Bucket website** section. 10. Retrieve the URL of your website under **Website URL**. ## Example of what your website should look like Your website's homepage should look similar to the following in light mode: - + Your website's homepage should look similar to the following in dark mode: - + This is what a collapsible admonition with a custom title should look like when collapsed: - + This is what a collapsible admonition with a custom title should look like when expanded: - + diff --git a/tutorials/using-own-grafana/index.mdx b/tutorials/using-own-grafana/index.mdx index 0f8b4c42e8..ca3be6ebae 100644 --- a/tutorials/using-own-grafana/index.mdx +++ b/tutorials/using-own-grafana/index.mdx @@ -12,6 +12,9 @@ dates: validation: 2025-01-02 posted: 2023-05-10 --- +import image from './assets/scaleway_cockpit_tuto_data_source.webp' +import image2 from './assets/scaleway_cockpit_tuto_data_source.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -46,7 +49,7 @@ In this tutorial, you will learn how to use your own Grafana with [Scaleway's Co ## Creating your data source for metrics 1. From the Grafana homepage, click **Add your first data source**. - + 2. Select the Prometheus data source in the list that displays. 3. Retrieve the URL of the metrics data source you want to add from the [Data sources tab](https://console.scaleway.com/cockpit/dataSource) of the Scaleway console. Make sure that the region in the URL is the one where your data source is located. 4. Add `/prometheus` at the end of the URL. Your metrics' URL should look like the following: @@ -64,7 +67,7 @@ In this tutorial, you will learn how to use your own Grafana with [Scaleway's Co ## Creating your data source for logs 1. From the Grafana homepage, click **Add your first data source**. - + 2. Select the Loki data source in the list that displays. 3. Retrieve the URL of the logs data source you want to add from the [Data sources tab](https://console.scaleway.com/cockpit/dataSource) of the Scaleway console. 4. Paste your logs' URL in the **URL** field of the **HTTP** section. diff --git a/tutorials/using-secret-manager-with-github-action/index.mdx b/tutorials/using-secret-manager-with-github-action/index.mdx index 5968572afd..32ddebdc05 100644 --- a/tutorials/using-secret-manager-with-github-action/index.mdx +++ b/tutorials/using-secret-manager-with-github-action/index.mdx @@ -12,6 +12,8 @@ dates: validation: 2025-01-02 posted: 2023-06-01 --- +import image from './assets/repository-secrets.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -46,7 +48,7 @@ You need to create the following secrets in your GitHub repository: GitHub secrets are immutable. If you want to update the value, you need to delete the current secret and create a new one. - + ## Use GitHub Action in your workflow diff --git a/tutorials/veeam-backup-replication-s3/index.mdx b/tutorials/veeam-backup-replication-s3/index.mdx index c8c1106189..69c14bc6a2 100644 --- a/tutorials/veeam-backup-replication-s3/index.mdx +++ b/tutorials/veeam-backup-replication-s3/index.mdx @@ -11,6 +11,52 @@ tags: vSphere Object-Storage Veeam-Backup Veeam dates: validation: 2025-06-09 --- +import image from './assets/scaleway_schema_veeam.webp' +import image2 from './assets/scaleway-veeam-target.webp' +import image3 from './assets/scaleway-veeam-01.webp' +import image4 from './assets/scaleway-veeam-02.webp' +import image5 from './assets/scaleway-veeam-backup-infrastructure.webp' +import image6 from './assets/scaleway-veeam-03.webp' +import image7 from './assets/scaleway-veeam-04.webp' +import image8 from './assets/scaleway-veeam-05.webp' +import image9 from './assets/scaleway-veeam-06.webp' +import image10 from './assets/scaleway-veeam-07.webp' +import image11 from './assets/scaleway-veeam-08.webp' +import image12 from './assets/scaleway-veeam-09.webp' +import image13 from './assets/scaleway-veeam-10.webp' +import image14 from './assets/scaleway-veeam-11.webp' +import image15 from './assets/scaleway-veeam-12.webp' +import image16 from './assets/scaleway-veeam-04.webp' +import image17 from './assets/scaleway-veeam-13.webp' +import image18 from './assets/scaleway-veeam-14.webp' +import image19 from './assets/scaleway-veeam-15.webp' +import image20 from './assets/scaleway-veeam-16.webp' +import image21 from './assets/scaleway-veeam-17.webp' +import image22 from './assets/scaleway-veeam-18.webp' +import image23 from './assets/scaleway-veeam-19.webp' +import image24 from './assets/scaleway-veeam-20.webp' +import image25 from './assets/scaleway-veeam-21.webp' +import image26 from './assets/scaleway-veeam-22.webp' +import image27 from './assets/scaleway-veeam-23.webp' +import image28 from './assets/scaleway-veeam-24.webp' +import image29 from './assets/scaleway-veeam-25.webp' +import image30 from './assets/scaleway-veeam-26.webp' +import image31 from './assets/scaleway-veeam-27.webp' +import image32 from './assets/scaleway-veeam-28.webp' +import image33 from './assets/scaleway-veeam-29.webp' +import image34 from './assets/scaleway-veeam-30.webp' +import image35 from './assets/scaleway-veeam-31.webp' +import image36 from './assets/scaleway-veeam-32.webp' +import image37 from './assets/scaleway-veeam-33.webp' +import image38 from './assets/scaleway-veeam-34.webp' +import image39 from './assets/scaleway-veeam-35.webp' +import image40 from './assets/scaleway-veeam-36.webp' +import image41 from './assets/scaleway-veeam-37.webp' +import image42 from './assets/scaleway-veeam-38.webp' +import image43 from './assets/scaleway-veeam-39.webp' +import image44 from './assets/scaleway-veeam-40.webp' +import image45 from './assets/scaleway-veeam-backup-files.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -31,7 +77,7 @@ A native Object Storage interface for Veeam Backup & Replication is part of the The following schema represents the functionality of Veeam Backup and Restore which acts as an intermediate agent to manage primary data storage and secondary and archival storage: - + @@ -50,7 +96,7 @@ The following schema represents the functionality of Veeam Backup and Restore wh By default, Veeam manages data in small objects of 1 MB/object. For optimal performance and storage of your backups, the configuration of **Local Target (Large Blocks)** in the storage options of Veeam is recommended. This setting allows you to store your backups in objects of 4MB/object: - + ## Configuring Veeam backup & replication @@ -62,111 +108,111 @@ The following schema represents the functionality of Veeam Backup and Restore wh ### Configuring an Object Storage repository 1. Once the Veeam Application is installed on your intermediate Instance, start the Veeam Console by double-clicking on the corresponding icon: - + 2. Enter the appropriate credentials, and click **Connect**: - + 3. Once logged into the Veeam console, click **Backup Infrastructure**: - + 4. Click **Backup Repositories** to enter the backup repository settings: - + 5. Click **Add Repository** to add the Object Storage bucket as a repository: - + 6. Choose **Object Storage**: - + 7. Click **S3 Compatible**: - + 8. The setup wizard for the repository appears, provide a name and additional information for it, then click **Next**: - + 9. Click **Add** (1) to enter the [API key](/iam/how-to/create-api-keys/) (2) related to the bucket. Optionally a description can be provided: - + 10. Provide the **Service Point** ([regional endpoint](/object-storage/concepts/#endpoint)), and the **Region** of your bucket, then click **Next**: - + For a bucket located in the Amsterdam region, the service point is `s3.nl-ams.scw.cloud` and the region is `nl-ams`. 11. Veeam will connect to the Object Storage infrastructure and download the list of buckets. Choose the bucket to be used with Veeam from the drop-down list. - + 12. Click **Browse**, create and select the folder for storing backups, then click **Next**: - + 13. Verify all settings in the summary before clicking on **Finish**: - + ### Configuring a local backup repository 1. As Veeam cannot currently push backups directly to an Amazon S3-compatible system, a local backup repository is required which will be configured as **Storage Tier** with Object Storage in a later step. Click **Add Repository**: - + 2. Choose **Direct Attached Storage** from the provided options: - + 3. Click **Microsoft Windows**: - + 4. Enter a **Name** and an optional **Description** for the repository, then click **Next**: - + 5. The local machine is pre-configured in this step, then click **Next**: - + 6. Click **Browse** to select a folder for local backups, then click **Next**: - + 7. Keep these settings with the default values and click **Next**: - + 8. A summary of the configuration is shown, click **Apply** to apply the configuration to the repository: - + 9. Veeam applies the configuration and runs some checks. Once they have completed, exit the wizard by clicking on **Finish**: - + ### Configuring a scale-out repository 1. Enter the **Scale-out Repositories** section: - + 2. Enter a **Name** and an optional **Description** for the Scale-out repository, then click **Next**: - + 3. Click **Add** and choose the local Backup repository from the list. Confirm and click **Next**: - + 4. Choose the **Placement Policy** for the repository. The default settings can be used, click **Next**: - + 5. Click **Extend Scale-out capacity with Object Storage** and choose your Object Storage repository from the drop-down list. It is also possible to define a time frame in which backups are uploaded to Object Storage and after how many days backups are transferred automatically. If required data can also be encrypted by activating the option. Once the Object Storage settings are configured, click **Apply**: - + 6. Once the scale-out bucket is configured, exit the wizard by clicking **Finish**. - + ### Adding a vSphere hypervisor in Veeam 1. Click **Managed Servers** in the Backup Infrastructure tab of the Veeam console: - + 2. Click **Add Server** in the menu bar: - + 3. Choose **VMware vSphere** from the list of virtualization technologies: - + 4. Click **vSphere** to launch the configuration wizard: - + 5. Enter the **DNS Name or IP** of the Hypervisor and an optional description of the server, then click **Next**: - + 6. Click **Add** (1) and enter the connection credentials for the hypervisor (2). Validate by clicking on **OK**. If the Hypervisor listens on a non-standard port, edit it. Click **Next** to go to the next step: - + 7. A summary of the connection is shown. Click **Finish** to exit the wizard. ### Configuring a backup job 1. On the Homepage of the Veeam console, click **New Backup**, then **Virtual Machine** in the drop-down menu: - + - + 2. Enter a **Name** and an optional **Description** for the backup job, then click **Next**: - + 3. Click **Add** (1) and choose the virtual machines or hypervisors (2) to be backed up. Once finished, click **Next**: - + 4. Choose the previously configured Scale-out repository from the drop-down menu and choose the restore points to keep on disk for the backup. Click **Next** once this is done: - + 5. Configure guest OS processing options for virtual machines (the default settings are usually sufficient), then click **Next**: - + 6. Configure a schedule to execute the backup job automatically. If no schedule is configured, the job must be started manually for each backup. Once the schedule is set, click **Next**: - + 7. A summary of the configured job is shown. Tick the box **Run the job when I click Finish** to execute the job immediately. If the box is not ticked, the first backup will be created according to the schedule. Click **Finish** to exit the wizard: - + Veeam proceeds with the backup and stores data on Object Storage. To verify it, log yourself into the [Scaleway console](https://console.scaleway.com), enter the Object Storage section, and choose the Bucket used for Veeam. Several files and folders created by the application are visible: - + ## Troubleshooting diff --git a/tutorials/vpc-public-gateway-autoconfiguration/index.mdx b/tutorials/vpc-public-gateway-autoconfiguration/index.mdx index cdecd1651d..9bfe4f7001 100644 --- a/tutorials/vpc-public-gateway-autoconfiguration/index.mdx +++ b/tutorials/vpc-public-gateway-autoconfiguration/index.mdx @@ -12,6 +12,12 @@ tags: Private-Network instances Public-Gateway dates: validation: 2025-05-14 --- +import image from './assets/scaleway-vpc-create-pn.webp' +import image2 from './assets/scaleway-vpc-attach-resource.webp' +import image3 from './assets/scaleway-vpc-create-pgw.webp' +import image4 from './assets/scaleway-vpc-attach-pgw-pn.webp' +import image5 from './assets/scaleway-vpc-ssh-bastion.webp' + import Requirements from '@macros/iam/requirements.mdx' import NetworkPublicGateways from '@macros/network/public-gateways.mdx' @@ -52,13 +58,13 @@ import NetworkPublicGateways from '@macros/network/public-gateways.mdx' 3. Go to the [VPC page](https://console.scaleway.com/vpc/vpc) of the Scaleway console. 4. Click a VPC of the region that covers your Instance's Availability Zone. 5. Click **Create Private Network**. The Private Network creation wizard displays: - + 6. Leave the default settings in place, or enter a customized **name**, **tags** and, in **Advanced Settings**, **CIDR block**. 7. Click **Create Private Network**. The Private Network is created inside the specified VPC, and its **Overview** page displays. 8. Click the **Attached Resources** tab to see the list of Instances attached to the Private Network. Currently, no resources are attached. 9. Click **Attach resource** and select your Instance from the dropdown list that displays. Leave the default IPv4 and IPv6 address settings in place, or specify these addresses yourself if you prefer. - + 10. Click **Attach to Private Network**. You are returned to the **Attached resources** tab, where your Instance now displays. 11. Use the `ip a` command on the Instance to verify the presence of the new Ethernet interface: ``` @@ -77,7 +83,7 @@ The Instance is now added to the Private Network, and the Private Network's inbu ## Creating a Public Gateway 1. Go to the [Public Gateways page](https://console.scaleway.com/public-gateway/public-gateways) of the Scaleway console, and click **Create a Public Gateway**. The Public Gateway creation wizard displays: - + 2. Enter the details of the new Public Gateway: - Choose the Availability Zone of the Public Gateway. It must match the Availability Zone of your Instance. - Select the Public Gateway offer type. @@ -86,7 +92,7 @@ The Instance is now added to the Private Network, and the Private Network's inbu 3. Click **Create a Public Gateway**. The Public Gateway is created, and you are taken to the list of your Public Gateways: 4. Click the Public Gateway you just created to go to its dashboard. 5. Click the **Private Networks** tab, then **Attach to a Private Network**. - + 6. Configure the attachment: - Select the Private Network you previously created from the drop-down list. - Either choose a specific IPv4 address to use for the attachment, or leave the default auto-allocation option in place. @@ -105,7 +111,7 @@ SSH bastion allows you to make secure SSH connections to resources attached to a 1. Go to the [Public Gateways page](https://console.scaleway.com/public-gateway/public-gateways) of the Scaleway console, and click on the Public Gateway you created previously. Its **Overview** page displays. 2. In the **SSH bastion** panel, click **Activate**. - + 3. Leave the default port in place, copy the SSH connection command, and click **Save SSH bastion settings**. SSH bastion is activated, and all the SSH keys currently associated with your Scaleway Project are uploaded to the bastion. 4. Check that you can connect to your Instance via the gateway's bastion, with the `ssh -J bastion@212.47.227.11:61000 root@1` with the private IP address of your Instance on the Private Network, as established in the previous section. In this case, the command to use is `ssh -J bastion@212.47.227.11:61000 root@172.16.8.2`. diff --git a/tutorials/vuls-security-scanner/index.mdx b/tutorials/vuls-security-scanner/index.mdx index 9c3e10f78b..4d71ff7f07 100644 --- a/tutorials/vuls-security-scanner/index.mdx +++ b/tutorials/vuls-security-scanner/index.mdx @@ -12,6 +12,11 @@ dates: validation: 2025-05-19 posted: 2019-03-19 --- +import image from './assets/scaleway-vuls-scan.webp' +import image2 from './assets/scaleway-vuls_webhook.webp' +import image3 from './assets/scaleway-vuls_slack.webp' +import image4 from './assets/scaleway-vuls_reports.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -250,7 +255,7 @@ Download and Install [go-exploitdb](https://github.com/mozqnet/go-exploitdb). - **Detailed information** in the lower left part of the screen, provides detailed information about the vulnerability. - **Affected packages** in the lower right part of the screen, displays the affected package versions, and whether there is a fixed version. - + ## Scanning multiple machines (Optional) @@ -340,7 +345,7 @@ Vuls can send notifications on [Slack](https://www.slack.com) channels, by using 1. When logged into Slack, create a [new app](https://api.slack.com/apps?new_app=1). 2. In the APP parameters enable **Incoming Webhooks** and generate a new Webhook URL: - + 3. Edit the file `/usr/share/vuls/config.toml` and add a Slack block to it: ``` [slack] @@ -356,7 +361,7 @@ Vuls can send notifications on [Slack](https://www.slack.com) channels, by using Vuls sends a first report to Slack: - + 5. To run Vuls periodically, create a cronjob by running `crontab -e`. 6. Edit the `crontab` as follows: ``` @@ -401,6 +406,6 @@ Vuls provides a graphical web-based interface, called [VulsRepo](https://github. /usr/share/vuls/vulsrepo/vulsrepo-server ``` 8. Open a web browser and point it to `http://YOUR_SERVER_IP:5111` to visualize the Vuls reports: - + 9. Optionally, configure a [Nginx reverse proxy](/tutorials/nginx-reverse-proxy/) to restrict the access to the reports. For more information and guidance with advanced configuration, refer to the [official Vuls documentation](https://vuls.io/docs/en/abstract.html). \ No newline at end of file diff --git a/tutorials/web-deploy-windows-instance/index.mdx b/tutorials/web-deploy-windows-instance/index.mdx index 6b4e7d825e..f1176d5361 100644 --- a/tutorials/web-deploy-windows-instance/index.mdx +++ b/tutorials/web-deploy-windows-instance/index.mdx @@ -13,6 +13,8 @@ dates: validation: 2025-01-20 posted: 2025-01-20 --- +import image from './assets/scaleway-webdeploy_profile.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -97,7 +99,7 @@ Start-Website -Name "MyApplication" - Destination URL: `` - User name: Administrator - Password: (Use the password retrieved earlier) - + 6. Click **Finish** to create the profile. 7. Click **Publish** to deploy your website. diff --git a/tutorials/wireguard-mesh-vpn/index.mdx b/tutorials/wireguard-mesh-vpn/index.mdx index 3c83ada648..676cf69df7 100644 --- a/tutorials/wireguard-mesh-vpn/index.mdx +++ b/tutorials/wireguard-mesh-vpn/index.mdx @@ -13,6 +13,8 @@ dates: validation: 2025-01-22 posted: 2020-07-02 --- +import image from './assets/scaleway-wireguard_mesh.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -20,7 +22,7 @@ WireGuard is a modern VPN (Virtual Private Network) software. It is designed to In this tutorial, we show you how to use WireGuard to spin up a private mesh network to create a secure private connection between your different servers and Instances. A mesh network allows your devices to communicate with each other using a Virtual Private Network without the need for a central server: - + We use two Ubuntu Instances, one located in the `PAR-1` region, and the other located in the `AMS-1` region, and create a virtual network between them. diff --git a/tutorials/wordpress-instantapp/index.mdx b/tutorials/wordpress-instantapp/index.mdx index 8887570b9b..e29ce8d994 100644 --- a/tutorials/wordpress-instantapp/index.mdx +++ b/tutorials/wordpress-instantapp/index.mdx @@ -12,6 +12,11 @@ dates: validation: 2025-07-02 posted: 2015-05-07 --- +import image from './assets/scaleway-nc-new-sg.webp' +import image2 from './assets/scaleway-wp-configuration.webp' +import image3 from './assets/scaleway-wplogin.webp' +import image4 from './assets/scaleway-wp.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -77,7 +82,7 @@ To avoid spam, remote mail ports cannot be reached from our infrastructure by de 1. Click the **Security groups** tab to enter the security groups' page. 2. Click **Create security group** and enter the security group's name and description. - + 3. Check the **Enable SMTP ports** box to unblock the mail ports. 4. Click **Add Instance** and select the WordPress Instance to which you want to apply the security group configuration. 5. Click **Create security group**. @@ -90,13 +95,13 @@ To avoid spam, remote mail ports cannot be reached from our infrastructure by de 4. Select a language and click **Continue**. The WordPress admin page displays. 5. Fill in the required information and click **Install WordPress**. - + The installation takes a few seconds. 6. On the login page, enter your username and password, and click **Log In**. - + 7. You are now connected to your blog and can start using it. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/wordpress-lemp-stack-focal/index.mdx b/tutorials/wordpress-lemp-stack-focal/index.mdx index 3028eced11..f3cb6bc22e 100644 --- a/tutorials/wordpress-lemp-stack-focal/index.mdx +++ b/tutorials/wordpress-lemp-stack-focal/index.mdx @@ -12,6 +12,10 @@ dates: validation: 2025-05-19 posted: 2021-12-03 --- +import image from './assets/scaleway-wordpress_lemp.webp' +import image2 from './assets/scaleway-wordpress_install.webp' +import image3 from './assets/scaleway-wordpress_dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -335,8 +339,8 @@ In your web browser, navigate to your server's domain name or public IP address: ``` 4. Save and exit the file, then return to your web browser. 5. Enter the database information for WordPress: - + 6. Complete the five-minute WordPress installation process. - + 7. Log in. Your dashboard displays. - + diff --git a/tutorials/wordpress-lemp-stack-ubuntu-jammy-jellyfish-22-04/index.mdx b/tutorials/wordpress-lemp-stack-ubuntu-jammy-jellyfish-22-04/index.mdx index 85c2d7d483..6160dcda4e 100644 --- a/tutorials/wordpress-lemp-stack-ubuntu-jammy-jellyfish-22-04/index.mdx +++ b/tutorials/wordpress-lemp-stack-ubuntu-jammy-jellyfish-22-04/index.mdx @@ -12,6 +12,10 @@ dates: validation: 2025-03-19 posted: 2023-02-24 --- +import image from './assets/scaleway-wordpress_lemp.webp' +import image2 from './assets/scaleway-wordpress_install.webp' +import image3 from './assets/scaleway-wordpress_dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -328,8 +332,8 @@ Open your preferred web browser and enter your Instance's domain name or public ``` 4. Save and exit the file, then return to your web browser. 5. Enter the database information for WordPress: - + 6. Complete the five-minute WordPress installation process. - + 7. Log in. Your dashboard displays. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/wordpress-lemp-stack/index.mdx b/tutorials/wordpress-lemp-stack/index.mdx index dd78464493..77d6bba4d8 100644 --- a/tutorials/wordpress-lemp-stack/index.mdx +++ b/tutorials/wordpress-lemp-stack/index.mdx @@ -13,6 +13,10 @@ dates: validation: 2025-05-13 posted: 2018-11-09 --- +import image from './assets/scaleway-wordpress_lemp.webp' +import image2 from './assets/scaleway-wordpress_install.webp' +import image3 from './assets/scaleway-wordpress_dashboard.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -327,8 +331,8 @@ In your web browser, navigate to your server's domain name or public IP address: ``` 4. Save and exit the file, then return to your web browser. 5. Enter the database information for WordPress: - + 6. Complete the five-minute WordPress installation process. - + 7. Log in. Your dashboard displays. - \ No newline at end of file + \ No newline at end of file diff --git a/tutorials/zabbix-monitoring/index.mdx b/tutorials/zabbix-monitoring/index.mdx index c4146c130a..87959067e4 100644 --- a/tutorials/zabbix-monitoring/index.mdx +++ b/tutorials/zabbix-monitoring/index.mdx @@ -12,6 +12,19 @@ dates: validation: 2025-05-19 posted: 2019-06-17 --- +import image from './assets/scaleway-zabbix-62-1.webp' +import image2 from './assets/scaleway-zabbix-install-02.webp' +import image3 from './assets/scaleway-zabbix-install-03.webp' +import image4 from './assets/scaleway-zabbix-install-04.webp' +import image5 from './assets/scaleway-zabbix-install-05.webp' +import image6 from './assets/scaleway-zabbix-install-06.webp' +import image7 from './assets/scaleway-zabbix-dashboard.webp' +import image8 from './assets/scaleway-zabbix-create-host.webp' +import image9 from './assets/scaleway-zabbix-add-server-01.webp' +import image10 from './assets/scaleway-zabbix-add-server-02.webp' +import image11 from './assets/scaleway-zabbix-media-types.webp' +import image12 from './assets/scaleway-zabbix_graph.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -214,18 +227,18 @@ This tutorial uses a **MariaDB** database with Zabbix. ## Configuring the Zabbix web interface 1. Type the domain name of your Zabbix Instance (e.g. `http://zabbix.example.com:8080`) in a web browser and open the page. The Installation wizard displays. Click **Next step** to launch it. - + A check of pre-requirements displays, all of the values must have the status **OK**. 2. Click **Next step** to continue. - + 3. Enter the MariaDB (MySQL) database information. They are already configured for the Zabbix server, but the web interface requires them too. Click **Next step** once the information is filled in the form. - + 4. Click **Next step** to continue. A pre-installation summary displays. - + 5. Check that all given information is correct and click **Next step** to continue. - + 6. Click **Finish** to complete the installation of the Zabbix web interface. - + ## Configuring Zabbix agent @@ -348,14 +361,14 @@ This tutorial uses a **MariaDB** database with Zabbix. ## Adding a host to Zabbix 1. Open a web browser and navigate to your Zabbix server Instance (i.e. `http://zabbix.example.com/`). Enter the Username **Admin** and Password **zabbix**, then click **Sign in**. You are logged in and the Zabbix dashboard displays. - + 2. Click **Configuration**, then **Hosts**. On the hosts page, click **Create Host** to add the second Instance. - + 3. Enter the **Host name** of the second Instance and its **IP address**. Optionally one or several groups can be chosen to bundle Instances in groups. 4. Click **Templates** to choose a configuration template for the instance. Select `Templates/Operating systems` -> `Linux by Zabbix agent` and click **Select**. - + 5. Click the **Encryption** tab and set PSK for both **Connections to host** and **Connections from host**. Set **PSK identity** to the value of the `TLSPSKIdentity` configured in the Zabbix Agent configuration (i.e. **ZabbixPSK-01**) and set the PSK value to the key generated during the configuration of the Agent. Once set, click **Add** at the bottom of the page to add the Instance to Zabbix. - + 6. Once added, wait for about one minute before reloading the server list. The new Instance appears and the labels **ZBX** and **PSK** indicate that the Zabbix agent is running on the Instance and that the connection is encrypted with a pre-shared key. ## Adding users @@ -378,7 +391,7 @@ This tutorial uses a **MariaDB** database with Zabbix. Zabbix proposes a wide range of [notification plugins](https://www.zabbix.com/integrations?cat=notifications_alerting) including emails, jabber, SMS and many more to get alerted in case of an issue. 1. To configure email notifications, click **Administration**, then on **Media types** in the navigation bar on the top of the page. A list of all pre-configured notification options displays. - + 2. Click **Email** to edit the settings. Enter the SMTP credentials of your email provider and update the configuration by clicking on **Update**. To send email from the Instance, make sure to [unblock](/instances/how-to/send-emails-from-your-instance/) the SMTP ports in the Instances security group. @@ -395,6 +408,6 @@ Zabbix collects status information of the Instances and generates status graphs 1. Click **Monitoring**, then on **Graphs** in the navigation bar at the top of the page. 2. Select the Instance and the services to display, then choose the desired time frame for the graph. - + This setup allows basic monitoring of Instances. For more information on how to monitor devices and services with Zabbix, refer to the [official documentation](https://www.zabbix.com/documentation/current/manual). \ No newline at end of file diff --git a/tutorials/zammad-ticketing/index.mdx b/tutorials/zammad-ticketing/index.mdx index 864f9a1fd5..76158d60e5 100644 --- a/tutorials/zammad-ticketing/index.mdx +++ b/tutorials/zammad-ticketing/index.mdx @@ -13,6 +13,14 @@ dates: validation: 2025-05-19 posted: 2020-12-22 --- +import image from './assets/scaleway-zammad_01.webp' +import image2 from './assets/scaleway-zammad_02.webp' +import image3 from './assets/scaleway-zammad_03.webp' +import image4 from './assets/scaleway-zammad_04.webp' +import image5 from './assets/scaleway-zammad_05.webp' +import image6 from './assets/scaleway-zammad_06.webp' +import image7 from './assets/scaleway-zammad_07.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -161,17 +169,17 @@ Zammad uses the [Nginx](http://nginx.org/) web server to serve the application. 1. Open a web browser and point it to your Zammad installation (in our tutorial: `https://zammad.example.com`). 2. The interactive setup wizard displays. Click **Setup new system** to start the configuration of the tool. 3. Enter the required information for the administrator account and validate the form by clicking **Create**: - + 4. Enter the required information about your organization. You can upload your company logo to customize the installation. Make sure the **System URL** corresponds with your domain name (`zammad.example.com` in our example): - + 5. Choose how you want to deliver your emails. You can either use a local mail server, installed on your Instance or use an external mailing service by using SMTP: - + Enter the SMTP details of either the local MTA or the information you received from your messaging service. 6. To configure the email channel, click the **Email** button and enter the account POP3/IMAP information for your incoming emails. - + 7. You have completed the basic installation of Zammad. The agent dashboard displays: - + Your users and agents can now communicate efficiently by email and by logging into their helpdesk interface. @@ -189,7 +197,7 @@ If required, you can create more detailed roles by adding more and allowing or d 1. From the Zammad dashboard click the cogwheel icon (1) to enter the management section of the system. 2. In the users section (2) of the management panel, click **New user** (3) to create a new account. - + 3. Enter the account information of the new user and tick the checkbox corresponding to its role on the application. Once all information is provided, click **Submit** to create the new user account. To create a large number of user accounts, you can also use the bulk upload feature to upload a file in the comma-separated values (CSV) format. It must be saved as UTF-8. @@ -208,7 +216,7 @@ And much more. 1. Click the cogwheel icon (1) to enter the management section of Zammad. 2. Scroll down to the **Channels** section (2) and choose the communication channel you want to configure (3). 3. The configuration options vary depending on the channel you want to configure. - + ## Conclusion diff --git a/tutorials/zulip/index.mdx b/tutorials/zulip/index.mdx index e0b9524819..1dbe650f6c 100644 --- a/tutorials/zulip/index.mdx +++ b/tutorials/zulip/index.mdx @@ -13,6 +13,11 @@ dates: validation: 2025-05-14 posted: 2021-10-21 --- +import image from './assets/scaleway-zulip_new_orga.webp' +import image2 from './assets/scaleway-zulip_dashboard.webp' +import image3 from './assets/scaleway-sendinblue_config.webp' +import image4 from './assets/scaleway-zulip_manage_orga.webp' + import Requirements from '@macros/iam/requirements.mdx' @@ -81,9 +86,9 @@ More than 90 integrations are available for Zulip, including GitHub, Jira, Zende The link is a secure one-time-use link. If you have lost it or if you need another one later, you can generate a new one by running `/home/zulip/deployments/current/manage.py generate_realm_creation_link` in the Zulip main directory. 6. Open your web browser and point it to your Zulip activation link. Enter your email address to create a new organization. Confirm by clicking **Create Organization**: - + 7. Complete the registration by providing your organization's name and additional information, such as a secure password. Once completed, you see Zulip's main screen: - + ## Configuring outgoing emails @@ -131,13 +136,13 @@ Your Zulip is now running, however, it cannot send any email notifications in it You can also verify if the emails have been sent and delivered to the recipient from your SendInBlue dashboard: - + ## Configuring Zulip Your Zulip Instance is now ready for basic use. However, there are many additional features you can configure for your organization. To do so, click the menu button and then on **Manage Organization**: - + Zulip provides features such as user groups (e.g. highlight all team members of the marketing team by using their `@marketing` group), allows you to manage your organization security settings, add custom emojis, manage your users, and a lot more.