Rails Study, Day 4: Still Working on the Dev Environment
Published on 29 Mar 2017
by Alexander Garber
So far I have spent time on the following:
- Vagrant
- Docker
- Digital Ocean Droplet
- Heroku
However, I'm going to take a step back and reconsider what I'm trying to accomplish.
What is my deliverable?
I want to build a Rails site, hosted on Heroku, that showcases my solutions to puzzles from Advent of Code.
How is my work supposed to flow?
![]() |
Images, containers, Atom, etc. |
- Development environment (DE) is separate from the host operating system. (Docker container or VM)
- Text editor (Atom) has read/write access to the code in the DE.
- The DE can be easily duplicated for a sandbox server.
- Code from the DE can be pushed to Github; from Github, the latest code cloned.
- Changes from the DE can be pushed to Docker Hub; from DH the latest version of the DE.
- Production code from the DE can be pushed to Heroku; from Heroku, the latest production code, although that should be available in Github.
What are the specifications of my development environment?
- Version control of all relevant packages.
- Read/Write access to development environment from host.
- Access to online platform (Github,
- Available locally, without a constant internet connection.
- Totally accessible by Atom text editor on my host machine.
- Can upload code to Heroku, pull the latest code from Heroku, and push updated code to Heroku.
- Can push updates to the environment to a repository.
What shall be my development environment?
- Docker container for the DE, with all the necessary packages installed.
- Atom text editor installed on host.
- FTP access between DE and host.
- Github access from DE.
- Docker Hub access from DE.
- Heroku access from DE.
all tags
activerecord android annoyances api apt arch array artix atom az3w backend bash blog browser bug callback career cli cloud code coding config configuration cp crud css database db design devops django email erp filter fugitive gif gist git gnome grep hebrew http ide isbn-fetcher iso javascript job search js kanban kanban\ kindle koans linux logger manjaro map markdown microservices mobi mtp neovim nodejs packages pastbin patch post python rails reduce refactoring rest routes rspec ruby scripting security sed shell sql string_replacement study tdd terminal testing version_control vim walkthrough workflow