Skip to content

Commit

Permalink
VSCode : Add Docker Integration
Browse files Browse the repository at this point in the history
add Dockerfile and VSCode extensions to
build, debug and patch optee-client project.

Signed-off-by: Ayoub Zaki <ayoub.zaki@embetrix.com>
  • Loading branch information
embetrix committed Jun 12, 2024
1 parent 3eac340 commit f46c3aa
Show file tree
Hide file tree
Showing 3 changed files with 80 additions and 0 deletions.
29 changes: 29 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"name": "optee-client-docker",
"build": {
"dockerfile": "../Dockerfile"
},

"customizations": {
"vscode": {
"settings": {
"terminal.integrated.profiles.linux": {
"bash": {
"path": "/bin/bash",
"args": ["-l"]
}
},
"terminal.integrated.defaultProfile.linux": "bash"
},
"extensions": [
"ms-vscode.cpptools",
"eamodio.gitlens"
]
}
},

// Map the host .ssh folder into the container for a seamless ssh experience
"mounts": [
"source=${localEnv:HOME}${localEnv:USERPROFILE}/.ssh,target=/home/optee/.ssh,type=bind,consistency=cached"
]
}
10 changes: 10 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"recommendations": [
"ms-vscode-remote.remote-containers",
"ms-vscode-remote.remote-wsl",
"ms-vscode-remote.vscode-remote-extensionpack",
"ms-vscode.cpptools-extension-pack",
"ms-vscode.cpptools",
"eamodio.gitlens",
]
}
41 changes: 41 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
FROM ubuntu:22.04

ENV LANG=C.UTF-8

RUN dpkg --add-architecture armhf
RUN dpkg --add-architecture arm64

RUN echo 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ jammy main restricted universe multiverse' > /etc/apt/sources.list
RUN echo 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ jammy-updates main restricted universe multiverse' >> /etc/apt/sources.list
RUN echo 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse' >> /etc/apt/sources.list
RUN echo 'deb [arch=amd64] http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse' >> /etc/apt/sources.list
RUN echo 'deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports/ jammy main restricted universe multiverse' >> /etc/apt/sources.list
RUN echo 'deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports/ jammy-updates main restricted universe multiverse' >> /etc/apt/sources.list
RUN echo 'deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports/ jammy-backports main restricted universe multiverse' >> /etc/apt/sources.list
RUN echo 'deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports/ jammy-security main restricted universe multiverse' >> /etc/apt/sources.list

RUN apt update && apt upgrade -y && \
apt install -y \
build-essential \
automake \
cmake \
gcc-aarch64-linux-gnu \
gcc-arm-linux-gnueabihf \
gdb-multiarch \
curl \
dpkg-dev \
pkg-config \
uuid-dev:armhf \
uuid-dev:arm64

# Additional development tools
RUN apt-get install -y \
git-core git-man git-email \
sudo nano vim openssh-client bash-completion

# Add non root user
RUN useradd -ms /bin/bash optee
RUN echo "optee ALL=(ALL) NOPASSWD: ALL" | tee -a /etc/sudoers
USER optee


0 comments on commit f46c3aa

Please sign in to comment.