-
Notifications
You must be signed in to change notification settings - Fork 7
0. Background technology for working on IMAGE
Juliette Regimbal edited this page Oct 2, 2024
·
1 revision
Every person working on IMAGE doesn't have to be an expert at all of the below tools, but at least some familiarity with all of them will make the overall project make more sense. If you find better tutorials or resources, please add them!
- Using unicorn for testing, you'll be connecting using SSH. This is so important that we have a whole wiki page on it!
- Once logged in, you'll be using the Linux command line. You should be able to navigate the filesystem, chain commands together with
|
(pipe), understand file ownership and groups, and be familiar with basic commands likecd
,ls
,ls -l
,cat
,less
,cp
,mv
,grep
,rm
,ping
, and an editor likenano
or any other of your choice. More advanced commands of likely use includetmux
,glances
,watch
,grep
regular expressions. - Git, and github, especially the github flow. You should be able to clone a repo, make a branch, make changes, merge main back into that branch if main has changed, and create a pull request (PR) that is linked to a work item. If you need help, you'll find that we expect that you're using the command line version of git for basic operations, or github's UI for things like PRs. If you're using a git GUI, that is fine, but most of us are not familiar with those tools. Sometimes these other tools do things in weird ways and can get you into a funny state, for which help may be limited since it isn't always obvious what happened.
-
Docker including
docker-compose
. If you're working on preprocessors or handlers, you should be able to write a Dockerfile, build an image, run that image as a container, and create a docker-compose.yml that has all the necessary Docker services, volumes, and networks. In most cases, you'll be able to use the existing docker-compose.yml as a reference.- Examples of public video introductions to Docker are available here and here.
- An introduction to Docker in the context of the Shared Reality Lab is available on the lab wiki along with other useful materials.
- Some more video tutorials to Docker showing how to integrate with the command line here and here
- Basic networking and HTTP, since all our containers use http for communication. Note in particular the HTTP error codes which are used to report status between containers.
- Another simple guide to HTTP basics
- Windows users who have trouble using SSH and cannot git clone repos on other machines can follow these instructions: SSH for connecting to servers and to github