45 lines
1.6 KiB
Markdown
45 lines
1.6 KiB
Markdown
# Checklist for New Staging Instances
|
|
|
|
- Build and tag the Docker images:
|
|
|
|
docker-compose -f docker-compose.yml -f docker-compose.build.yml build
|
|
|
|
- Create the instance from the template
|
|
- Assign a public Elastic IP address
|
|
- Update Route53 with the new IP address for `pacosako-staging.jessemcdonald.info`
|
|
- Create the DB volume from a snapshot
|
|
- Attach the DB volume to the instance
|
|
- Clear out old SSH host key information
|
|
|
|
ssh-keygen -f "$HOME/.ssh/known_hosts" -R "pacosako-staging.jessemcdonald.info"
|
|
ssh-keygen -f "$HOME/.ssh/known_hosts" -R "1.2.3.4"
|
|
|
|
- Run the scripts:
|
|
|
|
./scripts/setup_instance.sh ec2-user@pacosako-staging.jessemcdonald.info
|
|
./scripts/copy_images.sh ec2-user@pacosako-staging.jessemcdonald.info
|
|
./scripts/copy_compose.sh ec2-user@pacosako-staging.jessemcdonald.info
|
|
|
|
- Start the containers:
|
|
|
|
ssh ec2-user@pacosako-staging.jessemcdonald.info \
|
|
docker-compose \
|
|
-f paco_sako_docker/docker-compose.yml \
|
|
-f paco_sako_docker/docker-compose.staging.yml \
|
|
up -d
|
|
|
|
- After a few seconds, restart Apache2 to complete `mod_md` setup:
|
|
|
|
ssh ec2-user@pacosako-staging.jessemcdonald.info \
|
|
docker exec paco_sako_docker_httpd_1 \
|
|
/usr/local/apache2/bin/apachectl -k graceful
|
|
|
|
## Instructions for Production Instances
|
|
|
|
The process for creating a production instance is similar,
|
|
with the following changes:
|
|
|
|
- Replace `pacosako-staging` with `pacosako`
|
|
- Use `docker-compose.prod.yml` instead of `docker-compose.staging.yml`
|
|
- Create Cloudwatch alarms to avoid runaway billing
|