It was pretty easy to set up a docker workstation that resembles the kind of env I use for node dev. I just needed to make a Dockerfile like this:
# I don't remember why I needed to set up timezone, TBH . I probably just Googled it somewhere after some warning during build.
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# I've just always used aptitude on Ubuntu. ag is just so much better than grep. etc.
RUN apt update && apt install aptitude sudo git silversearcher-ag vim -y
# This creates a new user for me. I prefer working with my own user instead of root.
RUN useradd -rm -d /home/username -s /bin/bash -g root -G sudo -u 1000 username
RUN echo 'username:password' | chpasswd
Build the image
From there you build the image with
docker build -t dannyb/my-dev . inside the dir with the Dockerfile. This takes a few minutes.
Start the instance
docker run -d dannyb/my-dev to start the instance. Now it’s ready to be connected to with VS Code.
Connecting with VS Code
For VS Code setup, I followed these instructions. Now I just open up VS code, press ctrl-shift-P and select the
Remote-Containers: Attach to Running Container... option. In the box that opens it will have all your running containers listed, along with the image they were created from. Select the one that says
dannyb/my-dev and it basically mounts it. Open up the terminal and you’re logged in as root into the docker instance! The first thing I run there is
su username to switch to my user, and
cd to go to the user’s home dir.
Setting up SSH key to be able to clone repos
You might well know how this is done. I tend to run
cat ~/.ssh/id_rsa.pub to copy my pub key. Then you add it to GitHub or Bitbucket or wherever the repo you’re gonna work is.
After this is done, you can clone the repo. Once you’ve cloned the repo, press the “Open Folder” button in the Explorer sidebar of VS Code, and select the cloned repo dir. This actually restarts your terminal session, so just run
su username again to switch to your user.
I tend to do this with nvm. The installation instructions are pretty short. You can then install whatever version of node you need.
That’s pretty much it
There are any number of other things I end up setting up, specific to my likes and needs of the project.
Ended Googling my name looking for something else funny, but found this little gem I wanted to preserve in case it gets removed at some point…
Super dry and all business…from a FAH team blog post.
What’s your name? My Name is Dan Bernardić.
I’ve been a Web developer since… 2007
How did you become a Web developer? I completed a Bachelor of Science degree in Applied Computer Science from the University of Winnipeg. Since then, I’ve been working on developing my skill set and self-teaching at home and at work.
Where are you located? I work in the FarmLink office in Winnipeg’s Grain Exchange District. I’ve been living in Winnipeg since 2001, when I immigrated from Croatia.
What do you do at Farm At Hand? I work with the development team to create new functionality in the Farm At Hand web app.
I’ve been in the farmily since… FarmLink and Farm At Hand merged in January 2016.
What’s your experience with farming or agriculture? I’ve been working as a programmer in the Agriculture industry since 2013. First I was part of the Farm Business Communications team ( Western Producer, Manitoba Co-operator, Country Guide, etc. ). Additionally, I have about 2 years experience with FarmLink Marketing Solutions and Farm At Hand. I do not have farming experience otherwise.
What is the biggest thing you’ve learned about farmers and/or Agriculture since you joined Farm At Hand? Agriculture is the backbone of industry on the Prairies. Coming to Winnipeg as an adult immigrant, I only recently noticed that Winnipeg probably wouldn’t exist if it weren’t for Agriculture.
What’s one of your favourite moments? Farm At Hand is headquartered in Vancouver. I have not been many places outside of Manitoba, so I enjoyed visiting there when I first joined the team. Their weather is much more mild than in Winnipeg. It was great meeting the team, and I enjoyed talking about programming over fancy burgers and beer.
About a year old – http://peridot-php.github.io/ – Clean and refreshing. Assertions library at http://peridot-php.github.io/leo/expect.html .
Installed it with:
composer global require peridot-php/peridot:~1.15
composer global require peridot-php/leo:~1.0
And had to add it to the PATH ( $HOME/.composer/vendor/bin ).
I’m pretty excited to let you know I’ve finally started working on my next presentation ( after taking a break for about 8 months from meetups and presentations ).
It will be about agile fluency, and all I’ve gotta show for it so far is a ( hi-res ) photo of my whiteboard wall with some thoughts.
- Got in touch with Chris Brower, the Program Co-ordinator for Digital Media Design and 3D Computer Graphics at the Red River College. It seems that the best fit for my further education would be a selection of courses from the digital media design, graphic design, and creative communications programmes, though I still really don’t haven’t looked into it enough to know whether that makes any sense, so I will take a close look at those programmes to understand it all better.
- Wrote this and previous blog post
- Followed up with a new technical writer acquaintance I made on Wednesday at the WordPress meetup.
- Got an appointment with Mario Tomberli, a local software developer recruiter, who reached out to me after I tweeted about being laid off
- Set up job alerts at the Job Bank website. Used location Winnipeg, no job title, and keywords: web software app mobile developer programming programmer
- Signed up for an orientation session with the YMCA Business Training Centre, for joining their Self Employment Program
- Signed up for an orientation session for the E.A.R.S. programme offered by the Winnipeg Transition Centre
- Signed up for an orientation session with Opportunities for Employment
I still plan to try to set up my computer further for work on WordPress websites, an initiative I’m hoping will provide lucrative self-employment opportunities, and perhaps even a product with passive income opportunities.
I’ve set up a version-controlled repository for the code retreat.
This time around I have branches with the boilerplate/scaffolding code for several testing frameworks including:
* DocTest for Python
* PHPUnit & SimpleTest for PHP
Just a new face I got. Jus’ sayin’
Got my new glasses from http://goggles4u.com. The lenses are so clean that the world looks new and shiny! I need a haircut/makeover. 🙂
<?php echo “Remember me next time”; ?>
I consider the progress I’ve made from “That is unacceptable” to “I need to be more accepting of that” one of my greatest gains in 2013.