- docker
- docker compose V2
- ruby >= 3.0.0
- make
Add to /etc/hosts: 127.0.0.1 code-basics.test
Clone project
Some lsp servers are fully workable only when the root dir is the same inside and outside the container. That is why we set WORKDIR to /opt/projects/hexlet-basics
. So, if it is possible, clone this project to that directory.
Prepare pulling image locally
- Open
./app/lib/docker_exercise_api.rb
- Find
def self.download(lang_name)
line - Comment or remove
ok = system("docker pull #{image_name(lang_name)}")
line - Add new line
ok = true
below
Run
make project-setup
make compose # run server
# open code-basics.test
make app-test # run tests
# load language
# make app-language-load L=php
make app-db-prepare # sometimes, when fixtures were changed
To manage loaded languages and set other settings, you need to sign in (login: full@test.io
, password: password
)
Kube access
# make k8s-macos-setup or make k8s-ubuntu-setup
export DIGITALOCEAN_ACCESS_TOKEN=<your token>
make local-cluster-setup
-
Create new tag via command:
make next-tag
-
Wait notification about ready tag in Slack channel
#sideprojects-code-auto
or wait Github Actions -
Change version in k8s/hb-app-chart/values.yaml and then:
make -C k8s helm-upgrade-app
- try to reinitialize your fork repository Read more
- try to add
RUN git config --global --add safe.directory ${PROJECT_ROOT}
line afterWORKDIR ${PROJECT_ROOT}
in Dockerfile Read more
This repository is created and maintained by the team and the community of Hexlet, an educational project. Read more about Hexlet.
See most active contributors on hexlet-friends.