@@ -89,6 +89,9 @@ Before getting started, ensure you have the following installed:
8989 files provided (e.g., ` .devcontainer/devcontainer.json ` ). This setup will install
9090 required dependencies, tools, and environment variables needed for the project.
9191
92+ * ** Container Customization** :
93+ See ` .devcontainer/README.md ` for devcontainer configuration options.
94+
9295#### Available Commands
9396
9497Once inside the DevContainer, you can use the following commands to run tests
@@ -145,6 +148,33 @@ If you encounter issues:
145148* ** Bazelisk Documentation** : [ https://github.com/bazelbuild/bazelisk ] ( https://github.com/bazelbuild/bazelisk )
146149* ** VSCode DevContainer Documentation** : [ https://code.visualstudio.com/docs/remote/containers ] ( https://code.visualstudio.com/docs/remote/containers )
147150
151+ ### Docker Development Image
152+
153+ The ` .devcontainer/Dockerfile.dev `
154+ dockerfile can be built directly with the following command.
155+
156+ ``` sh
157+ docker build -t opentelemetry-cpp-dev -f ./.devcontainer/Dockerfile.dev .
158+ ```
159+
160+ You can customize the image using build arguments
161+ to match permissions with the host user.
162+
163+ ``` sh
164+ docker build -t opentelemetry-cpp-dev \
165+ --build-arg USER_UID=" $( id -u) " \
166+ --build-arg USER_GID=" $( id -g) " \
167+ -f ./.devcontainer/Dockerfile.dev .
168+
169+ ```
170+
171+ Run an interactive bash session binding your host
172+ opentelemetry-cpp directory to the container's workspace:
173+
174+ ``` sh
175+ docker run -it -v " $PWD :/workspaces/opentelemetry-cpp" opentelemetry-cpp-dev bash
176+ ```
177+
148178## Pull Requests
149179
150180### How to Send Pull Requests
@@ -195,6 +225,12 @@ If you made changes to the Markdown documents (`*.md` files), install the latest
195225markdownlint .
196226```
197227
228+ If you modified shell scripts (` *.sh ` files), install ` shellcheck ` and run:
229+
230+ ``` sh
231+ shellcheck --severity=error < path to shell script> .sh
232+ ```
233+
198234Open a pull request against the main ` opentelemetry-cpp ` repo.
199235
200236To run tests locally, please read the [ CI instructions] ( ci/README.md ) .
@@ -271,11 +307,11 @@ the C++ repository.
271307
272308* [ OpenTelemetry
273309 Specification] ( https://github.com/open-telemetry/opentelemetry-specification )
274- * The OpenTelemetry Specification describes the requirements and expectations
275- of for all OpenTelemetry implementations.
310+ * The OpenTelemetry Specification describes the requirements and expectations
311+ of for all OpenTelemetry implementations.
276312
277313* Read through the OpenTelemetry C++ documentation
278- * The
314+ * The
279315 [ API] ( https://opentelemetry-cpp.readthedocs.io/en/latest/api/api.html )
280316 and
281317 [ SDK] ( https://opentelemetry-cpp.readthedocs.io/en/latest/sdk/sdk.html )
0 commit comments