Install NixOS on Amazon EC2: Difference between revisions

From NixOS Wiki
imported>Tamiyo
→‎Additional Resources: ssh sometimes asks for password
imported>Kimat
m 23.11 image is not available on that list cf. https://discourse.nixos.org/t/ami-for-nixos-23-11/36860/7
 
Line 3: Line 3:
== Public NixOS AMIs ==
== Public NixOS AMIs ==


A list of NixOS AMI's available on AWS is located [https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/virtualisation/amazon-ec2-amis.nix here].
A list of NixOS AMI's available on AWS is located [https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/virtualisation/amazon-ec2-amis.nix here] and for a more up to date list: [https://nixos.github.io/amis/ here] (cf. [https://discourse.nixos.org/t/ami-for-nixos-23-11/36860/7 this discourse thread]).


The default user for these AMI's is <code>root</code>. There isn't a default password, instead authentication is done by using the SSH key selected during the EC2 creation process.
The default user for these AMI's is <code>root</code>. There isn't a default password, instead authentication is done by using the SSH key selected during the EC2 creation process.

Latest revision as of 13:20, 4 March 2024

Amazon EC2 is a widely used cloud deployment platform that is part of Amazon Web Services (AWS). NixOS largely supports the platform through AMIs and the nixos-generators project.

Public NixOS AMIs

A list of NixOS AMI's available on AWS is located here and for a more up to date list: here (cf. this discourse thread).

The default user for these AMI's is root. There isn't a default password, instead authentication is done by using the SSH key selected during the EC2 creation process.

Creating a NixOS AMI

The nixos-generators project is currently the best method to create your own NixOS AMI. Follow the directions provided by nixos-generators & then follow the instructions provided by AWS.

Additional Resources

Building and Importing NixOS AMIs on EC2 by Jack Kelly

Troubleshooting

SSH Asks For Password

When connecting to a newly launched EC2 instance via SSH, it may ask for a password. This seems to be because the amazon-init systemd service is still reading user data. Back out of the current SSH attempt and try again in a few minutes.