Running Fedora 43 Cloud Base (qcow2) on OCI Compute – Step-by-Step Guide
Overview
Oracle Cloud Infrastructure (OCI) allows users to import
custom OS images and run operating systems beyond the marketplace-provided
images. This capability is particularly useful for testing cutting-edge
Linux distributions, validating application compatibility, or standardizing
OS builds across environments.
In this post, I demonstrate how to import and run a
Fedora 43 Cloud Base image (qcow2) on OCI Compute, using OCI Object Storage
and the Custom Image feature.
Note that Fedora is not listed as supported operating system
on OCI - https://docs.oracle.com/en-us/iaas/Content/Compute/Tasks/importingcustomimagelinux.htm
⚠️ This demonstration is
performed in a personal OCI tenancy using test resources only.
No customer data, environments, or screenshots are used.
Oracle Products Used
- Oracle
Cloud Infrastructure
- OCI
Compute
- OCI
Custom Images
- OCI
Object Storage
- OCI
IAM
- Virtual
Cloud Network (VCN)
Why Fedora Cloud Image on OCI?
The Fedora Cloud Base image is:
- Optimized
for cloud environments
- Minimal
and lightweight
- Cloud-init
enabled
- Ideal
for testing next-generation Linux features
Running Fedora on OCI is useful for:
- OS
compatibility testing
- CI/CD
build agents
- Developer
sandboxes
- Learning
OCI custom image workflows
High-Level Architecture
Fedora Cloud qcow2 Image
|
| Upload
|
OCI Object Storage Bucket
|
| Custom Image Import
|
OCI Compute Instance
Prerequisites
OCI Requirements
- Active
OCI tenancy (Free Tier is sufficient)
- Permission
to manage:
- Object
Storage
- Compute
Images
- Compute
Instances
Local System
- Browser
access to OCI Console
- Fedora
Cloud Base qcow2 image downloaded locally
Step 1: Download Fedora 43 Cloud Base Image
Download the qcow2 cloud image from Fedora Cloud
images repository.
Example filename:
Fedora-Cloud-Base-Generic-43-1.6.x86_64.qcow2
Local local system – Fedora Cloud Base
qcow2 image downloaded
Step 2: Upload Image to OCI Object Storage
- Navigate
to Storage → Object Storage → Buckets
- Create
a new bucket (e.g., custom-images)
- Upload
the Fedora qcow2 file
OCI Console – Object Storage bucket
with Fedora qcow2 uploaded
Step 3: Create a Custom Image in OCI
- Go
to Compute → Custom Images
- Click
Create Custom Image
- Choose
Import from Object Storage
- Select:
- Bucket
name
- Fedora
qcow2 object
- Image
type:
- QCOW2
- Launch
mode:
- Paravirtualized
(recommended)
OCI Console – Custom image creation screen
Step 4: Monitor Image Import
The image will move through states:
IMPORTING → AVAILABLE
Import time depends on image size and region.
OCI Console – Custom image status showing AVAILABLE
Step 5: Create a Compute Instance Using the Custom Image
- Navigate
to Compute → Instances
- Click
Create Instance
- Select:
- Image
source: Custom Image
- Fedora
43 custom image
- Choose
shape:
- VM.Standard.E5.Flex
(or Free Tier–eligible shape)
- Configure
networking:
- VCN
+ subnet
- Add
SSH public key
OCI Console – Instance creation
using custom Fedora image
Instance being provisioned in a public subnet
Step 6: First Boot Considerations (cloud-init)
Fedora Cloud images rely on cloud-init for:
- SSH
key injection
- User
creation
- Network
configuration
OCI automatically supports cloud-init.
Wait 2–3 minutes after instance launch before attempting
SSH. Ensure that you selected one NSG which allows you to connect over SSH.
OCI Console – Instance status
RUNNING
Step 7: Connect to Fedora Instance via SSH
From your local system:
ssh fedora@<instance-public-ip>
Verify OS version:
cat /etc/os-release
Expected output:
Fedora Linux 43
SSH session showing Fedora 43 login, connected using the
username “fedora”
Step 8: Post-Launch Validation
Check cloud-init status
cloud-init status
Verify network configuration
ip a
ip route
Update system packages
sudo dnf update -y
then reboot once
Successful cloud-init completion
and network validation
Optional – configure VNC
sudo dnf install tigervnc-server -y
Set the VNC password (repeat for all the users created)
vncpasswd
Map your user to a display: Edit the mapping file to assign
your username to a specific display number (e.g., :1).
sudo nano /etc/tigervnc/vncserver.users
Add this line (replace yourusername with your actual
username):
:1=yourusername
Direct VNC to Launch Budgie
By default, VNC may try to launch a basic window manager or
GNOME. You must tell it to use Budgie.
Create a local config directory: mkdir -p ~/.vnc
Create the startup script: nano ~/.vnc/config
Add the session type:
session=budgie-desktop
securitytypes=vncauth,tlsvnc
desktop=Budgie
geometry=1920x1080
Enable and Start the Service
Fedora uses systemd to manage VNC sessions. Use the display
number you defined in Step 2.
# Reload systemd to pick up new configurations
sudo systemctl daemon-reload
# Start and enable the service for display :1
sudo systemctl enable vncserver@:1 –now
Make sure the NSG allows the port 5901, 5902 etc for each of
the users sessions
I have connected using the “fedora” user-
Common Issues & Troubleshooting
|
Issue |
Resolution |
|
SSH not working |
Wait for cloud-init completion |
|
No user access |
Use fedora default user |
|
Boot failure |
Verify Paravirtualized mode |
|
Slow import |
Use same region bucket |
Security Considerations
- Restrict
SSH access using Security Lists / NSGs
- Rotate
SSH keys regularly
- Disable
password authentication
- Use
Bastion or P2S VPN for admin access
- Apply
regular OS updates
Use Cases
- Fedora
feature testing
- Application
compatibility validation
- Custom
AMI-style workflows on OCI
- CI/CD
build agents
- Training
and labs
Lessons Learned
- OCI
custom images work seamlessly with cloud-init
- qcow2
format is fully supported
- Object
Storage simplifies image staging
- Paravirtualized
mode provides best compatibility
- Non-marketplace
OS images are first-class citizens in OCI
Conclusion
This demonstration shows how Oracle Cloud Infrastructure
Compute enables users to run custom Linux distributions, such as Fedora
43 Cloud Base, using native image import capabilities.
The workflow is secure, repeatable, and suitable for both
experimentation and enterprise testing scenarios.
References
- OCI
Custom Images Documentation
- OCI
Compute Documentation
- Fedora
Cloud Image Documentation
🔗 About the Author
Debapriya Biswas
Oracle ACE Apprentice | Sr. Consultant – Cloud Technologies
Focused on OCI Compute, Automation, and Advanced Networking
Comments
Post a Comment