rust:pasir

文書の過去の版を表示しています。


pasir

コンテナビルド

$ bat -p Containerfile

ARG PHP_VERSION=8.4
ARG RUST_VERSION=1
ARG VARIANT=bookworm

FROM rust:${RUST_VERSION}-slim-${VARIANT} AS rust-builder

FROM php:${PHP_VERSION}-zts-${VARIANT} AS php-builder

ENV RUSTUP_HOME=/usr/local/rustup
ENV CARGO_HOME=/usr/local/cargo
ENV PATH=/usr/local/cargo/bin:$PATH

COPY --from=rust-builder /usr/local/cargo /usr/local/cargo
COPY --from=rust-builder /usr/local/rustup /usr/local/rustup

RUN set -eux; \
    apt-get update; \
    apt-get install -y --no-install-recommends \
        libclang-dev \
    ;

WORKDIR /app

COPY . .

RUN LIBRARY_PATH=/usr/local/lib cargo build --bins --release

FROM php:${PHP_VERSION}-zts-${VARIANT}

ENV PASIR_PORT=8080

COPY --from=php-builder /app/target/release/pasir /usr/local/bin/pasir

RUN cp "$PHP_INI_DIR/php.ini-development" "$PHP_INI_DIR/php.ini"

WORKDIR /app

EXPOSE ${PASIR_PORT}

CMD ["pasir"]

$ podman build -f Containerfile

[1/3] STEP 1/1: FROM rust:1-slim-bookworm AS rust-builder
--> 6a90f03a4552
[2/3] STEP 1/10: FROM php:8.4-zts-bookworm AS php-builder
Resolved "php" as an alias (/etc/containers/registries.conf.d/000-shortnames.conf)
Trying to pull docker.io/library/php:8.4-zts-bookworm...
Getting image source signatures
Copying blob a70e50dc1ece done   | 
Copying blob 8e44f01296e3 skipped: already exists  
Copying blob 74af709de6e8 done   | 
Copying blob 32ecf7838eed done   | 
Copying blob 05bc1da9c6d5 done   | 
Copying blob 9b33b969dd5d done   | 
Copying blob a654809ec1b3 done   | 
Copying blob 93d3a951f823 done   | 
Copying blob 821ef2c980fb done   | 
Copying blob 7a8528e2600e done   | 
Copying config d6eaba3fbc done   | 
Writing manifest to image destination
[2/3] STEP 2/10: ENV RUSTUP_HOME=/usr/local/rustup
--> 78aac6760131
[2/3] STEP 3/10: ENV CARGO_HOME=/usr/local/cargo
--> f5f8c9ff4d8b
[2/3] STEP 4/10: ENV PATH=/usr/local/cargo/bin:$PATH
--> 192c33cba25b
[2/3] STEP 5/10: COPY --from=rust-builder /usr/local/cargo /usr/local/cargo
--> e304e053a8e1
[2/3] STEP 6/10: COPY --from=rust-builder /usr/local/rustup /usr/local/rustup
--> 1beae6d9a0ec
[2/3] STEP 7/10: RUN set -eux;     apt-get update;     apt-get install -y --no-install-recommends         libclang-dev     ;
+ apt-get update
Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB]
Get:2 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]
Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
Get:4 http://deb.debian.org/debian bookworm/main amd64 Packages [8791 kB]
Get:5 http://deb.debian.org/debian bookworm-updates/main amd64 Packages [6924 B]
Get:6 http://deb.debian.org/debian-security bookworm-security/main amd64 Packages [288 kB]
Fetched 9341 kB in 18s (512 kB/s)
Reading package lists...
+ apt-get install -y --no-install-recommends libclang-dev
Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
  libbsd0 libclang-14-dev libclang-common-14-dev libclang1-14 libedit2 libgc1
  libllvm14 libobjc-12-dev libobjc4 libz3-4
Recommended packages:
  libclang-rt-14-dev
The following NEW packages will be installed:
  libbsd0 libclang-14-dev libclang-common-14-dev libclang-dev libclang1-14
  libedit2 libgc1 libllvm14 libobjc-12-dev libobjc4 libz3-4
0 upgraded, 11 newly installed, 0 to remove and 0 not upgraded.
Need to get 59.9 MB of archives.
After this operation, 433 MB of additional disk space will be used.
Get:1 http://deb.debian.org/debian bookworm/main amd64 libbsd0 amd64 0.11.7-2 [117 kB]
Get:2 http://deb.debian.org/debian bookworm/main amd64 libgc1 amd64 1:8.2.2-3 [245 kB]
Get:3 http://deb.debian.org/debian bookworm/main amd64 libobjc4 amd64 12.2.0-14+deb12u1 [43.2 kB]
Get:4 http://deb.debian.org/debian bookworm/main amd64 libobjc-12-dev amd64 12.2.0-14+deb12u1 [170 kB]
Get:5 http://deb.debian.org/debian bookworm/main amd64 libedit2 amd64 3.1-20221030-2 [93.0 kB]
Get:6 http://deb.debian.org/debian bookworm/main amd64 libz3-4 amd64 4.8.12-3.1 [7216 kB]
Get:7 http://deb.debian.org/debian bookworm/main amd64 libllvm14 amd64 1:14.0.6-12 [21.8 MB]
Get:8 http://deb.debian.org/debian bookworm/main amd64 libclang1-14 amd64 1:14.0.6-12 [6157 kB]
Get:9 http://deb.debian.org/debian bookworm/main amd64 libclang-common-14-dev all 1:14.0.6-12 [890 kB]
Get:10 http://deb.debian.org/debian bookworm/main amd64 libclang-14-dev amd64 1:14.0.6-12 [23.1 MB]
Get:11 http://deb.debian.org/debian bookworm/main amd64 libclang-dev amd64 1:14.0-55.7~deb12u1 [4728 B]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 59.9 MB in 1min 42s (587 kB/s)
Selecting previously unselected package libbsd0:amd64.
(Reading database ... 13255 files and directories currently installed.)
Preparing to unpack .../00-libbsd0_0.11.7-2_amd64.deb ...
Unpacking libbsd0:amd64 (0.11.7-2) ...
Selecting previously unselected package libgc1:amd64.
Preparing to unpack .../01-libgc1_1%3a8.2.2-3_amd64.deb ...
Unpacking libgc1:amd64 (1:8.2.2-3) ...
Selecting previously unselected package libobjc4:amd64.
Preparing to unpack .../02-libobjc4_12.2.0-14+deb12u1_amd64.deb ...
Unpacking libobjc4:amd64 (12.2.0-14+deb12u1) ...
Selecting previously unselected package libobjc-12-dev:amd64.
Preparing to unpack .../03-libobjc-12-dev_12.2.0-14+deb12u1_amd64.deb ...
Unpacking libobjc-12-dev:amd64 (12.2.0-14+deb12u1) ...
Selecting previously unselected package libedit2:amd64.
Preparing to unpack .../04-libedit2_3.1-20221030-2_amd64.deb ...
Unpacking libedit2:amd64 (3.1-20221030-2) ...
Selecting previously unselected package libz3-4:amd64.
Preparing to unpack .../05-libz3-4_4.8.12-3.1_amd64.deb ...
Unpacking libz3-4:amd64 (4.8.12-3.1) ...
Selecting previously unselected package libllvm14:amd64.
Preparing to unpack .../06-libllvm14_1%3a14.0.6-12_amd64.deb ...
Unpacking libllvm14:amd64 (1:14.0.6-12) ...
Selecting previously unselected package libclang1-14.
Preparing to unpack .../07-libclang1-14_1%3a14.0.6-12_amd64.deb ...
Unpacking libclang1-14 (1:14.0.6-12) ...
Selecting previously unselected package libclang-common-14-dev.
Preparing to unpack .../08-libclang-common-14-dev_1%3a14.0.6-12_all.deb ...
Unpacking libclang-common-14-dev (1:14.0.6-12) ...
Selecting previously unselected package libclang-14-dev.
Preparing to unpack .../09-libclang-14-dev_1%3a14.0.6-12_amd64.deb ...
Unpacking libclang-14-dev (1:14.0.6-12) ...
Selecting previously unselected package libclang-dev.
Preparing to unpack .../10-libclang-dev_1%3a14.0-55.7~deb12u1_amd64.deb ...
Unpacking libclang-dev (1:14.0-55.7~deb12u1) ...
Setting up libz3-4:amd64 (4.8.12-3.1) ...
Setting up libgc1:amd64 (1:8.2.2-3) ...
Setting up libbsd0:amd64 (0.11.7-2) ...
Setting up libedit2:amd64 (3.1-20221030-2) ...
Setting up libobjc4:amd64 (12.2.0-14+deb12u1) ...
Setting up libllvm14:amd64 (1:14.0.6-12) ...
Setting up libobjc-12-dev:amd64 (12.2.0-14+deb12u1) ...
Setting up libclang1-14 (1:14.0.6-12) ...
Setting up libclang-common-14-dev (1:14.0.6-12) ...
Setting up libclang-14-dev (1:14.0.6-12) ...
Setting up libclang-dev (1:14.0-55.7~deb12u1) ...
Processing triggers for libc-bin (2.36-9+deb12u13) ...
--> f9842590ad62
[2/3] STEP 8/10: WORKDIR /app
--> eb30020eeb67
[2/3] STEP 9/10: COPY . .
--> 28657b18d30e
[2/3] STEP 10/10: RUN LIBRARY_PATH=/usr/local/lib cargo build --bins --release
    Updating git repository `https://github.com/el7cosmos/ext-php-rs.git`
    Updating crates.io index
 Downloading crates ...
  Downloaded anstyle-query v1.1.4
  Downloaded atomic-waker v1.1.2
  Downloaded anstyle-parse v0.2.7
  Downloaded anstream v0.6.21
  Downloaded serde_spanned v0.6.9
  Downloaded darling_macro v0.20.11
  Downloaded tower-service v0.3.3
  Downloaded http-body v1.0.1
  Downloaded toml_datetime v0.6.11
  Downloaded tower-layer v0.3.3
  Downloaded headers-core v0.3.0
  Downloaded serde_spanned v1.0.3
  Downloaded ident_case v1.0.1
  Downloaded semver v1.0.27
  Downloaded sync_wrapper v1.0.2
  Downloaded sha1 v0.10.6
  Downloaded toml_writer v1.0.4
  Downloaded tokio-macros v2.6.0
  Downloaded utf8parse v0.2.2
  Downloaded toml_datetime v0.7.3
  Downloaded thread_local v1.1.9
  Downloaded thiserror-impl v2.0.17
  Downloaded anstyle v1.0.13
  Downloaded equivalent v1.0.2
  Downloaded subtle v2.6.1
  Downloaded signal-hook-registry v1.4.6
  Downloaded strsim v0.11.1
  Downloaded is_terminal_polyfill v1.70.1
  Downloaded skeptic v0.13.7
  Downloaded scopeguard v1.2.0
  Downloaded slab v0.4.11
  Downloaded cexpr v0.6.0
  Downloaded block-buffer v0.10.4
  Downloaded walkdir v2.5.0
  Downloaded cargo_metadata v0.14.2
  Downloaded unicase v2.8.1
  Downloaded cfg-if v1.0.4
  Downloaded version_check v0.9.5
  Downloaded toml v0.8.23
  Downloaded toml_parser v1.0.4
  Downloaded cargo-platform v0.1.9
  Downloaded crypto-common v0.1.6
  Downloaded bytecount v0.6.9
  Downloaded tracing-attributes v0.1.30
  Downloaded fnv v1.0.7
  Downloaded errno v0.3.14
  Downloaded cpufeatures v0.2.17
  Downloaded smallvec v1.15.1
  Downloaded fastrand v2.3.0
  Downloaded either v1.15.0
  Downloaded digest v0.10.7
  Downloaded colorchoice v1.0.4
  Downloaded env_home v0.1.0
  Downloaded convert_case v0.8.0
  Downloaded which v8.0.0
  Downloaded serde_core v1.0.228
  Downloaded futures-task v0.3.31
  Downloaded futures-sink v0.3.31
  Downloaded sharded-slab v0.1.7
  Downloaded heck v0.5.0
  Downloaded generic-array v0.14.9
  Downloaded shlex v1.3.0
  Downloaded http-range-header v0.4.2
  Downloaded http-body-util v0.1.3
  Downloaded tempfile v3.23.0
  Downloaded unicode-ident v1.0.19
  Downloaded thiserror v2.0.17
  Downloaded toml v0.9.8
  Downloaded glob v0.3.3
  Downloaded serde v1.0.228
  Downloaded httpdate v1.0.3
  Downloaded itoa v1.0.15
  Downloaded typenum v1.19.0
  Downloaded serde_derive v1.0.228
  Downloaded same-file v1.0.6
  Downloaded socket2 v0.6.1
  Downloaded toml_edit v0.22.27
  Downloaded uuid v1.18.1
  Downloaded rustc-hash v1.1.0
  Downloaded rustc-hash v2.1.1
  Downloaded percent-encoding v2.3.2
  Downloaded pin-utils v0.1.0
  Downloaded base64 v0.22.1
  Downloaded clap-verbosity-flag v3.0.4
  Downloaded futures-channel v0.3.31
  Downloaded tracing-core v0.1.34
  Downloaded unicode-segmentation v1.12.0
  Downloaded tracing v0.1.41
  Downloaded tower v0.5.2
  Downloaded pin-project-lite v0.2.16
  Downloaded serde_json v1.0.145
  Downloaded cargo-manifest v0.19.1
  Downloaded clap_derive v4.5.49
  Downloaded tokio-util v0.7.16
  Downloaded find-msvc-tools v0.1.4
  Downloaded error-chain v0.12.4
  Downloaded clap_lex v0.7.6
  Downloaded tower-http v0.6.6
  Downloaded lazy_static v1.5.0
  Downloaded futures-core v0.3.31
  Downloaded winnow v0.7.13
  Downloaded jobserver v0.1.34
  Downloaded libloading v0.8.9
  Downloaded lock_api v0.4.14
  Downloaded mime v0.3.17
  Downloaded tracing-subscriber v0.3.20
  Downloaded quote v1.0.41
  Downloaded once_cell v1.21.3
  Downloaded parking_lot_core v0.9.12
  Downloaded mime_guess v2.0.5
  Downloaded syn v2.0.106
  Downloaded nu-ansi-term v0.50.3
  Downloaded anyhow v1.0.100
  Downloaded httparse v1.10.1
  Downloaded darling v0.20.11
  Downloaded clang-sys v1.8.1
  Downloaded bitflags v2.9.4
  Downloaded getrandom v0.3.4
  Downloaded parking_lot v0.12.5
  Downloaded tokio v1.48.0
  Downloaded camino v1.2.1
  Downloaded clap v4.5.49
  Downloaded headers v0.4.1
  Downloaded ryu v1.0.20
  Downloaded proc-macro2 v1.0.101
  Downloaded bytes v1.10.1
  Downloaded darling_core v0.20.11
  Downloaded memchr v2.7.6
  Downloaded cc v1.2.41
  Downloaded hyper-util v0.1.17
  Downloaded indexmap v2.11.4
  Downloaded http v1.3.1
  Downloaded minimal-lexical v0.2.1
  Downloaded aho-corasick v1.1.3
  Downloaded hashbrown v0.16.0
  Downloaded mio v1.0.4
  Downloaded pulldown-cmark v0.9.6
  Downloaded nom v7.1.3
  Downloaded hyper v1.7.0
  Downloaded itertools v0.13.0
  Downloaded futures-util v0.3.31
  Downloaded regex v1.12.2
  Downloaded h2 v0.4.12
  Downloaded clap_builder v4.5.49
  Downloaded bindgen v0.72.1
  Downloaded bindgen v0.70.1
  Downloaded regex-syntax v0.8.8
  Downloaded rustix v1.1.2
  Downloaded regex-automata v0.4.13
  Downloaded libc v0.2.177
  Downloaded linux-raw-sys v0.11.0
   Compiling proc-macro2 v1.0.101
   Compiling unicode-ident v1.0.19
   Compiling quote v1.0.41
   Compiling serde_core v1.0.228
   Compiling libc v0.2.177
   Compiling serde v1.0.228
   Compiling version_check v0.9.5
   Compiling memchr v2.7.6
   Compiling syn v2.0.106
   Compiling glob v0.3.3
   Compiling bitflags v2.9.4
   Compiling cfg-if v1.0.4
   Compiling bytes v1.10.1
   Compiling clang-sys v1.8.1
   Compiling getrandom v0.3.4
   Compiling pin-project-lite v0.2.16
   Compiling rustix v1.1.2
   Compiling anyhow v1.0.100
   Compiling minimal-lexical v0.2.1
   Compiling serde_json v1.0.145
   Compiling once_cell v1.21.3
   Compiling fnv v1.0.7
   Compiling linux-raw-sys v0.11.0
   Compiling itoa v1.0.15
   Compiling unicase v2.8.1
   Compiling futures-core v0.3.31
   Compiling regex-syntax v0.8.8
   Compiling http v1.3.1
   Compiling regex-automata v0.4.13
   Compiling nom v7.1.3
   Compiling libloading v0.8.9
   Compiling either v1.15.0
   Compiling ryu v1.0.20
   Compiling typenum v1.19.0
   Compiling serde_derive v1.0.228
   Compiling shlex v1.3.0
   Compiling tokio-macros v2.6.0
   Compiling cexpr v0.6.0
   Compiling regex v1.12.2
   Compiling itertools v0.13.0
   Compiling tracing-core v0.1.34
   Compiling socket2 v0.6.1
   Compiling signal-hook-registry v1.4.6
   Compiling mio v1.0.4
   Compiling generic-array v0.14.9
   Compiling camino v1.2.1
   Compiling thiserror v2.0.17
   Compiling tokio v1.48.0
   Compiling error-chain v0.12.4
   Compiling equivalent v1.0.2
   Compiling hashbrown v0.16.0
   Compiling pulldown-cmark v0.9.6
   Compiling indexmap v2.11.4
   Compiling cargo-platform v0.1.9
   Compiling toml_datetime v0.6.11
   Compiling serde_spanned v0.6.9
   Compiling thiserror-impl v2.0.17
   Compiling tracing-attributes v0.1.30
   Compiling semver v1.0.27
   Compiling futures-sink v0.3.31
   Compiling strsim v0.11.1
   Compiling same-file v1.0.6
   Compiling winnow v0.7.13
   Compiling fastrand v2.3.0
   Compiling pin-utils v0.1.0
   Compiling smallvec v1.15.1
   Compiling bindgen v0.70.1
   Compiling utf8parse v0.2.2
   Compiling ident_case v1.0.1
   Compiling anstyle-parse v0.2.7
   Compiling darling_core v0.20.11
   Compiling tempfile v3.23.0
   Compiling tracing v0.1.41
   Compiling walkdir v2.5.0
   Compiling toml_edit v0.22.27
   Compiling tokio-util v0.7.16
   Compiling cargo_metadata v0.14.2
   Compiling http-body v1.0.1
   Compiling parking_lot_core v0.9.12
   Compiling bindgen v0.72.1
   Compiling bytecount v0.6.9
   Compiling rustc-hash v1.1.0
   Compiling anstyle v1.0.13
   Compiling httpdate v1.0.3
   Compiling anstyle-query v1.1.4
   Compiling httparse v1.10.1
   Compiling find-msvc-tools v0.1.4
   Compiling is_terminal_polyfill v1.70.1
   Compiling colorchoice v1.0.4
   Compiling anstream v0.6.21
   Compiling cc v1.2.41
   Compiling skeptic v0.13.7
   Compiling toml v0.8.23
   Compiling darling_macro v0.20.11
   Compiling block-buffer v0.10.4
   Compiling crypto-common v0.1.6
   Compiling mime_guess v2.0.5
   Compiling heck v0.5.0
   Compiling atomic-waker v1.1.2
   Compiling scopeguard v1.2.0
   Compiling slab v0.4.11
   Compiling env_home v0.1.0
   Compiling futures-task v0.3.31
   Compiling clap_lex v0.7.6
   Compiling tower-service v0.3.3
   Compiling mime v0.3.17
   Compiling unicode-segmentation v1.12.0
   Compiling rustc-hash v2.1.1
   Compiling convert_case v0.8.0
   Compiling aho-corasick v1.1.3
   Compiling clap_builder v4.5.49
   Compiling ext-php-rs v0.14.2 (https://github.com/el7cosmos/ext-php-rs.git?branch=static#8271a90d)
   Compiling futures-util v0.3.31
   Compiling h2 v0.4.12
   Compiling which v8.0.0
   Compiling lock_api v0.4.14
   Compiling clap_derive v4.5.49
   Compiling digest v0.10.7
   Compiling cargo-manifest v0.19.1
   Compiling darling v0.20.11
   Compiling futures-channel v0.3.31
   Compiling cpufeatures v0.2.17
   Compiling lazy_static v1.5.0
   Compiling sync_wrapper v1.0.2
   Compiling tower-layer v0.3.3
   Compiling toml_parser v1.0.4
   Compiling tower v0.5.2
   Compiling ext-php-rs-derive v0.11.2 (https://github.com/el7cosmos/ext-php-rs.git?branch=static#8271a90d)
   Compiling sharded-slab v0.1.7
   Compiling sha1 v0.10.6
   Compiling pasir v0.5.2 (/app)
   Compiling hyper v1.7.0
   Compiling parking_lot v0.12.5
   Compiling clap v4.5.49
   Compiling uuid v1.18.1
   Compiling toml_datetime v0.7.3
   Compiling serde_spanned v1.0.3
   Compiling http-body-util v0.1.3
   Compiling headers-core v0.3.0
   Compiling thread_local v1.1.9
   Compiling http-range-header v0.4.2
   Compiling percent-encoding v2.3.2
   Compiling base64 v0.22.1
   Compiling toml_writer v1.0.4
   Compiling nu-ansi-term v0.50.3
   Compiling toml v0.9.8
   Compiling tracing-subscriber v0.3.20
   Compiling headers v0.4.1
   Compiling tower-http v0.6.6
   Compiling hyper-util v0.1.17
   Compiling clap-verbosity-flag v3.0.4
    Finished `release` profile [optimized] target(s) in 3m 55s
--> 892a9a8c2c0a
[3/3] STEP 1/7: FROM php:8.4-zts-bookworm
[3/3] STEP 2/7: ENV PASIR_PORT=8080
--> 9116867fcd7d
[3/3] STEP 3/7: COPY --from=php-builder /app/target/release/pasir /usr/local/bin/pasir
--> f38c2eb98ca2
[3/3] STEP 4/7: RUN cp "$PHP_INI_DIR/php.ini-development" "$PHP_INI_DIR/php.ini"
--> 5808be2e7658
[3/3] STEP 5/7: WORKDIR /app
--> 431265f9d788
[3/3] STEP 6/7: EXPOSE ${PASIR_PORT}
--> f57523bc0fb4
[3/3] STEP 7/7: CMD ["pasir"]
[3/3] COMMIT
--> 25e5a97d4b30
25e5a97d4b30238cb22cfe93c3c58568168929ba260bb6ee36f2bfd0919cc681

  • rust/pasir.1764642726.txt.gz
  • 最終更新: 2025/12/02 11:32
  • by ともやん