upctl server create
Create a new server
Note that the default template, Ubuntu Server 24.04 LTS (Noble Numbat), only
supports SSH key based authentication. Use --ssh-keys
option to provide the
keys when creating a server with the default template. The examples below use
public key from the ~/.ssh
directory. If you want to use different
authentication method, use --os
parameter to specify a different template.
Examples
upctl server create --title myapp --zone fi-hel1 --hostname myapp --ssh-keys ~/.ssh/id_*.pub
upctl server create --wait --title myapp --zone fi-hel1 --hostname myapp --ssh-keys ~/.ssh/id_*.pub
upctl server create --title "My Server" --zone fi-hel1 --hostname myapp --ssh-keys ~/.ssh/id_*.pub
upctl server create --zone fi-hel1 --hostname myapp --ssh-keys ~/.ssh/id_*.pub --plan 2xCPU-4GB
upctl server create --zone fi-hel1 --hostname myapp --ssh-keys ~/.ssh/id_*.pub --plan custom --cores 2 --memory 4096
upctl server create --zone fi-hel1 --hostname myapp --password-delivery email --os "Debian GNU/Linux 10 (Buster)" --server-group a4643646-8342-4324-4134-364138712378
upctl server create --zone fi-hel1 --hostname myapp --ssh-keys ~/.ssh/id_*.pub --network type=private,network=037a530b-533e-4cef-b6ad-6af8094bb2bc,ip-address=10.0.0.1
Options
Option | Description |
---|---|
--avoid-host |
Host to avoid when scheduling the server. Use this to make sure VMs do not reside on specific host. Refers to value from host attribute. Useful when building HA-environments.Default: 0 |
--boot-order |
The boot device order, disk / cdrom / network or comma separated combination. |
--cores |
Number of cores. Only allowed if plan option is set to "custom".Default: 0 |
--create-password |
Create an admin password. |
--enable-firewall |
Enable firewall. |
--enable-metadata |
Enable metadata service. The metadata service will be enabled by default, if the selected OS template uses cloud-init and thus requires metadata service. |
--enable-remote-access |
Enable remote access. |
--host |
Schedule the server on a specific host. Refers to value from host attribute. Only available in private clouds.Default: 0 |
--hostname |
Server hostname. |
--label |
Labels to describe the server in key=value format, multiple can be declared.Usage: --label env=dev --label owner=operations Default: [] |
--memory |
Memory amount in MiB. Only allowed if plan option is set to "custom".Default: 0 |
--network |
A network interface for the server, multiple can be declared. Usage: --network family=IPv4,type=public --network type=private,network=037a530b-533e-4cef-b6ad-6af8094bb2bc,ip-address=10.0.0.1 Default: [] |
--os |
Server OS to use (will be the first storage device). The value should be title or UUID of an either public or private template. Set to empty to fully customise the storages. Default: Ubuntu Server 24.04 LTS (Noble Numbat) |
--os-storage-size |
OS storage size in GiB. This is only applicable if os is also set. Zero value makes the disk equal to the minimum size of the template.Default: 0 |
--os-storage-encrypt |
Encrypt the OS storage. This is only applicable if os is also set. |
--password-delivery |
Defines how password is delivered. Available: email, sms Default: none |
--plan |
Server plan name. See "server plans" command for valid plans. Set to "custom" and use cores and memory options for flexible plan.Default: 1xCPU-2GB |
--remote-access-password |
Defines the remote access password. |
--remote-access-type |
Set a remote access type. Available: vnc, spice |
--server-group |
UUID of a server group for the server. To remove the server from the group, see `servergroup modify |
--simple-backup |
Simple backup rule. Format (HHMM,{dailies,weeklies,monthlies}). Example: 2300,dailies |
--ssh-keys |
Add one or more SSH keys to the admin account. Accepted values are SSH public keys or filenames from where to read the keys. Default: [] |
--storage |
A storage connected to the server, multiple can be declared. Usage: --storage action=attach,storage=01000000-0000-4000-8000-000020010301,type=cdrom Default: [] |
--time-zone |
Time zone to set the RTC to. Default: UTC |
--title |
A short, informational description. |
--user-data |
Defines URL for a server setup script, or the script body itself. |
--username |
Admin account username. |
--video-model |
Video interface model of the server. Available: vga, cirrus Default: vga |
--wait |
Wait for server to be in started state before returning. |
--zone |
Zone where to create the server. Run upctl zone list to list all available zones. |
--help , -h |
help for create Default: false |
Global options
Option | Description |
---|---|
--client-timeout , -t |
Client timeout to use in API calls. Default: 0s |
--config |
Configuration file path. |
--debug |
Print out more verbose debug logs. Default: false |
--force-colours |
Force coloured output despite detected terminal support. |
--no-colours |
Disable coloured output despite detected terminal support. Colours can also be disabled by setting NO_COLOR environment variable. |
--output , -o |
Output format (supported: json, yaml and human) Default: human |
Related commands
Command | Description |
---|---|
upctl server | Manage servers |