File: Dockerfile

package info (click to toggle)
scitokens-cpp 1.3.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,172 kB
  • sloc: cpp: 11,717; ansic: 596; sh: 161; python: 132; makefile: 22
file content (61 lines) | stat: -rw-r--r-- 1,355 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# Use latest Ubuntu as base
FROM ubuntu:latest

# Avoid warnings by switching to noninteractive
ENV DEBIAN_FRONTEND=noninteractive

# Configure apt and install packages
RUN apt-get update \
    && apt-get -y install --no-install-recommends \
    # Build essentials and tools
    build-essential \
    cmake \
    ninja-build \
    pkg-config \
    git \
    # Required dependencies from GitHub Actions workflow
    libssl-dev \
    sqlite3 \
    libsqlite3-dev \
    libcurl4 \
    libcurl4-openssl-dev \
    uuid-dev \
    libgtest-dev \
    # C++ development and debugging tools
    gdb \
    gdbserver \
    valgrind \
    clang \
    clang-format \
    clang-tidy \
    lldb \
    # Additional utilities
    curl \
    wget \
    vim \
    nano \
    htop \
    tree \
    zip \
    unzip \
    ca-certificates \
    sudo \
    # Clean up
    && apt-get autoremove -y \
    && apt-get clean -y \
    && rm -rf /var/lib/apt/lists/*

# Create a non-root user to use
ARG USERNAME=vscode

# Create user and group without forcing specific UID/GID
RUN groupadd $USERNAME \
    && useradd -g $USERNAME -m $USERNAME \
    && echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
    && chmod 0440 /etc/sudoers.d/$USERNAME

# Switch back to dialog for any ad-hoc use of apt-get
ENV DEBIAN_FRONTEND=dialog

# Set the default user
USER $USERNAME