Bump container to Ubuntu 22.04
This commit is contained in:
1 parent
82dd148563
commit
e082209bd2
3 files changed
+22
-312
No files matched your search
Generated
-308
@@ -1,308 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="AutoImportSettings">
|
||||
<option name="autoReloadType" value="ALL" />
|
||||
</component>
|
||||
<component name="CMakeSettings">
|
||||
<configurations>
|
||||
<configuration PROFILE_NAME="Debug" ENABLED="true" CONFIG_NAME="Debug" />
|
||||
</configurations>
|
||||
</component>
|
||||
<component name="CargoProjects">
|
||||
<cargoProject FILE="$PROJECT_DIR$/Cargo.toml">
|
||||
<package file="$PROJECT_DIR$">
|
||||
<feature name="default" enabled="true" />
|
||||
</package>
|
||||
</cargoProject>
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="52900e09-9584-4b6c-95ff-fbd4ed5d8b2c" name="Changes" comment="Add interface package. Start adding auth stuff for refreshing tokens.">
|
||||
<change beforePath="$PROJECT_DIR$/.gitignore" beforeDir="false" afterPath="$PROJECT_DIR$/.gitignore" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/daemon/update_playlists.rs" beforeDir="false" afterPath="$PROJECT_DIR$/src/daemon/update_playlists.rs" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/listenbrainz.rs" beforeDir="false" afterPath="$PROJECT_DIR$/src/listenbrainz.rs" afterDir="false" />
|
||||
</list>
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="ClangdSettings">
|
||||
<option name="formatViaClangd" value="false" />
|
||||
</component>
|
||||
<component name="EmbeddingIndexingInfo">
|
||||
<option name="cachedIndexableFilesCount" value="55" />
|
||||
<option name="fileBasedEmbeddingIndicesEnabled" value="true" />
|
||||
</component>
|
||||
<component name="ExecutionTargetManager" SELECTED_TARGET="RsBuildProfile:dev" />
|
||||
<component name="FileTemplateManagerImpl">
|
||||
<option name="RECENT_TEMPLATES">
|
||||
<list>
|
||||
<option value="Rust File" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="FormatOnSaveOptions">
|
||||
<option name="myRunOnSave" value="true" />
|
||||
</component>
|
||||
<component name="Git.Settings">
|
||||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
||||
</component>
|
||||
<component name="MacroExpansionManager">
|
||||
<option name="directoryName" value="u4q8xqsl" />
|
||||
</component>
|
||||
<component name="MarkdownSettingsMigration">
|
||||
<option name="stateVersion" value="1" />
|
||||
</component>
|
||||
<component name="McpProjectServerCommands">
|
||||
<commands />
|
||||
<urls />
|
||||
</component>
|
||||
<component name="NextEditCompletionFeaturesState">
|
||||
<decayedCancelled>
|
||||
<entry key="MS100" value="1.7832100461155516E-49" />
|
||||
<entry key="MS500" value="1.779264445376079E-10" />
|
||||
<entry key="S2" value="0.003652247521800762" />
|
||||
<entry key="S5" value="0.10614339261181734" />
|
||||
<entry key="S10" value="0.34003735252927425" />
|
||||
<entry key="S30" value="1.0141819772215594" />
|
||||
<entry key="S60" value="2.6976232295670823" />
|
||||
<entry key="M2" value="7.235293047806507" />
|
||||
<entry key="M5" value="14.947740695354689" />
|
||||
<entry key="M10" value="21.02881866903945" />
|
||||
<entry key="M15" value="28.317060210937925" />
|
||||
<entry key="M30" value="53.26114480046425" />
|
||||
<entry key="H1" value="85.7690309902811" />
|
||||
<entry key="H2" value="112.72845131338053" />
|
||||
<entry key="H4" value="130.1882968053762" />
|
||||
<entry key="D1" value="147.2723769995884" />
|
||||
<entry key="W1" value="150.46076637067708" />
|
||||
</decayedCancelled>
|
||||
<decayedSelected>
|
||||
<entry key="MS100" value="1.0" />
|
||||
<entry key="MS500" value="1.0" />
|
||||
<entry key="S2" value="1.0000049403229003" />
|
||||
<entry key="S5" value="1.0091309729890607" />
|
||||
<entry key="S10" value="1.1271614733862405" />
|
||||
<entry key="S30" value="1.7861806484453573" />
|
||||
<entry key="S60" value="2.2514830516727353" />
|
||||
<entry key="M2" value="2.581298838268658" />
|
||||
<entry key="M5" value="2.820735662670735" />
|
||||
<entry key="M10" value="2.9330735250313964" />
|
||||
<entry key="M15" value="3.045973523232095" />
|
||||
<entry key="M30" value="3.4330893462953656" />
|
||||
<entry key="H1" value="3.94793113496648" />
|
||||
<entry key="H2" value="4.380377629877762" />
|
||||
<entry key="H4" value="4.662338988235804" />
|
||||
<entry key="D1" value="4.939407224543" />
|
||||
<entry key="W1" value="4.991231810430241" />
|
||||
</decayedSelected>
|
||||
<decayedShown>
|
||||
<entry key="MS100" value="0.014680042956468931" />
|
||||
<entry key="MS500" value="0.4298782432672315" />
|
||||
<entry key="S2" value="0.8131974375944065" />
|
||||
<entry key="S5" value="1.0260655929325786" />
|
||||
<entry key="S10" value="1.3691875685363921" />
|
||||
<entry key="S30" value="2.6468546225018925" />
|
||||
<entry key="S60" value="4.8229190871623215" />
|
||||
<entry key="M2" value="9.734676535071735" />
|
||||
<entry key="M5" value="17.729990071329567" />
|
||||
<entry key="M10" value="23.94139714757257" />
|
||||
<entry key="M15" value="31.348735575722195" />
|
||||
<entry key="M30" value="56.68614182340377" />
|
||||
<entry key="H1" value="89.71231876108209" />
|
||||
<entry key="H2" value="117.10626038721348" />
|
||||
<entry key="H4" value="134.84927155802265" />
|
||||
<entry key="D1" value="152.21154380465404" />
|
||||
<entry key="W1" value="155.4519634874815" />
|
||||
</decayedShown>
|
||||
</component>
|
||||
<component name="ProjectColorInfo">{
|
||||
"associatedIndex": 2
|
||||
}</component>
|
||||
<component name="ProjectId" id="2TwLYTFaOXHKmGf9lC3ltOC00Kl" />
|
||||
<component name="ProjectViewState">
|
||||
<option name="hideEmptyMiddlePackages" value="true" />
|
||||
<option name="showLibraryContents" value="true" />
|
||||
</component>
|
||||
<component name="PropertiesComponent">{
|
||||
"keyToString": {
|
||||
"Cargo.Run.executor": "Run",
|
||||
"RunOnceActivity.MCP Project settings loaded": "true",
|
||||
"RunOnceActivity.OpenProjectViewOnStart": "true",
|
||||
"RunOnceActivity.ShowReadmeOnStart": "true",
|
||||
"RunOnceActivity.TerminalTabsStorage.copyFrom.TerminalArrangementManager.252": "true",
|
||||
"RunOnceActivity.cidr.known.project.marker": "true",
|
||||
"RunOnceActivity.git.unshallow": "true",
|
||||
"RunOnceActivity.rust.reset.selective.auto.import": "true",
|
||||
"RunOnceActivity.typescript.service.memoryLimit.init": "true",
|
||||
"WebServerToolWindowFactoryState": "false",
|
||||
"cf.first.check.clang-format": "false",
|
||||
"cidr.known.project.marker": "true",
|
||||
"codeWithMe.voiceChat.enabledByDefault": "false",
|
||||
"com.intellij.ml.llm.matterhorn.ej.ui.settings.DefaultModelSelectionForGA.v1": "true",
|
||||
"git-widget-placeholder": "master",
|
||||
"junie.onboarding.icon.badge.shown": "true",
|
||||
"last_opened_file_path": "/home/jude/Documents/navidrome-playlists",
|
||||
"node.js.detected.package.eslint": "true",
|
||||
"node.js.detected.package.tslint": "true",
|
||||
"node.js.selected.package.eslint": "(autodetect)",
|
||||
"node.js.selected.package.tslint": "(autodetect)",
|
||||
"nodejs_package_manager_path": "npm",
|
||||
"org.rust.cargo.project.model.PROJECT_DISCOVERY": "true",
|
||||
"org.rust.cargo.project.model.impl.CargoExternalSystemProjectAware.subscribe.first.balloon": "",
|
||||
"org.rust.disableDetachedFileInspection/home/jude/navidrome-playlists/navidrome/src/client/mod.rs": "true",
|
||||
"org.rust.disableDetachedFileInspection/home/jude/navidrome-playlists/navidrome/src/client/playlists.rs": "true",
|
||||
"org.rust.disableDetachedFileInspection/home/jude/navidrome-playlists/navidrome/src/lib.rs": "true",
|
||||
"org.rust.disableDetachedFileInspection/home/jude/navidrome-playlists/navidrome/src/models.rs": "true",
|
||||
"org.rust.first.attach.projects": "true",
|
||||
"settings.editor.selected.configurable": "language.rust.cargo.check",
|
||||
"to.speed.mode.migration.done": "true",
|
||||
"ts.external.directory.path": "/home/jude/Documents/navidrome-playlists/app/node_modules/typescript/lib",
|
||||
"vue.rearranger.settings.migration": "true"
|
||||
},
|
||||
"keyToStringList": {
|
||||
"DatabaseDriversLRU": [
|
||||
"postgresql"
|
||||
],
|
||||
"com.intellij.ide.scratch.LRUPopupBuilder$1/SQL Dialect": [
|
||||
"PostgreSQL"
|
||||
]
|
||||
}
|
||||
}</component>
|
||||
<component name="RecentsManager">
|
||||
<key name="CopyFile.RECENT_KEYS">
|
||||
<recent name="$PROJECT_DIR$/src/daemon" />
|
||||
<recent name="$PROJECT_DIR$/navidrome/src/client" />
|
||||
</key>
|
||||
<key name="MoveFile.RECENT_KEYS">
|
||||
<recent name="$PROJECT_DIR$/etc/playlistd" />
|
||||
<recent name="$PROJECT_DIR$/src/daemon" />
|
||||
<recent name="$PROJECT_DIR$/navidrome/src/models" />
|
||||
</key>
|
||||
</component>
|
||||
<component name="RunManager">
|
||||
<configuration name="Run" type="CargoCommandRunConfiguration" factoryName="Cargo Command" nameIsGenerated="true">
|
||||
<option name="command" value="run" />
|
||||
<option name="workingDirectory" value="file://$PROJECT_DIR$" />
|
||||
<envs>
|
||||
<env name="DATABASE_URL" value="postgres:///navidrome-playlists" />
|
||||
<env name="LISTENBRAINZ_USER" value="jellywx" />
|
||||
<env name="SUBSONIC_BASE" value="https://navidrome.jellypro.xyz/rest" />
|
||||
<env name="SUBSONIC_PASSWORD" value="u7P4xQYZEvC9pFva" />
|
||||
<env name="SUBSONIC_USERNAME" value="jude" />
|
||||
<env name="DAEMON_INTERVAL" value="240" />
|
||||
</envs>
|
||||
<option name="emulateTerminal" value="false" />
|
||||
<option name="channel" value="DEFAULT" />
|
||||
<option name="requiredFeatures" value="true" />
|
||||
<option name="allFeatures" value="false" />
|
||||
<option name="withSudo" value="false" />
|
||||
<option name="buildTarget" value="REMOTE" />
|
||||
<option name="backtrace" value="SHORT" />
|
||||
<option name="isRedirectInput" value="false" />
|
||||
<option name="redirectInputPath" value="" />
|
||||
<method v="2">
|
||||
<option name="CARGO.BUILD_TASK_PROVIDER" enabled="true" />
|
||||
</method>
|
||||
</configuration>
|
||||
</component>
|
||||
<component name="RustProjectSettings">
|
||||
<option name="toolchainHomeDirectory" value="$USER_HOME$/.cargo/bin" />
|
||||
</component>
|
||||
<component name="RustfmtProjectSettings">
|
||||
<option name="runRustfmtOnSave" value="true" />
|
||||
<option name="useRustfmt" value="true" />
|
||||
</component>
|
||||
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="52900e09-9584-4b6c-95ff-fbd4ed5d8b2c" name="Changes" comment="" />
|
||||
<created>1691949245312</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1691949245312</updated>
|
||||
<workItem from="1691949248703" duration="4525000" />
|
||||
<workItem from="1692003763542" duration="5103000" />
|
||||
<workItem from="1692042976149" duration="10055000" />
|
||||
<workItem from="1694271920428" duration="9295000" />
|
||||
<workItem from="1694285959491" duration="2278000" />
|
||||
<workItem from="1694290396939" duration="1743000" />
|
||||
<workItem from="1694333344521" duration="1478000" />
|
||||
<workItem from="1694450589184" duration="2108000" />
|
||||
<workItem from="1694534880857" duration="6060000" />
|
||||
<workItem from="1694621211523" duration="3713000" />
|
||||
<workItem from="1708962769688" duration="6050000" />
|
||||
<workItem from="1710605458078" duration="1011000" />
|
||||
<workItem from="1710677603495" duration="13803000" />
|
||||
<workItem from="1710872266453" duration="225000" />
|
||||
<workItem from="1713283733149" duration="180000" />
|
||||
<workItem from="1713283935337" duration="13390000" />
|
||||
<workItem from="1713372315382" duration="4924000" />
|
||||
<workItem from="1713385358427" duration="2705000" />
|
||||
<workItem from="1713465993328" duration="1750000" />
|
||||
<workItem from="1713469457285" duration="6588000" />
|
||||
<workItem from="1713609379678" duration="7216000" />
|
||||
<workItem from="1713639881551" duration="577000" />
|
||||
<workItem from="1716043707662" duration="542000" />
|
||||
<workItem from="1716046070333" duration="1484000" />
|
||||
<workItem from="1716640392358" duration="367000" />
|
||||
<workItem from="1716642009543" duration="1546000" />
|
||||
<workItem from="1716650511971" duration="14000" />
|
||||
<workItem from="1723834879628" duration="4208000" />
|
||||
<workItem from="1758303664979" duration="1688000" />
|
||||
<workItem from="1768333949616" duration="1336000" />
|
||||
<workItem from="1768335441947" duration="213000" />
|
||||
<workItem from="1781027103068" duration="90000" />
|
||||
<workItem from="1781027311696" duration="3180000" />
|
||||
<workItem from="1781547110087" duration="406000" />
|
||||
</task>
|
||||
<task id="LOCAL-00001" summary="Structure">
|
||||
<created>1692008860369</created>
|
||||
<option name="number" value="00001" />
|
||||
<option name="presentableId" value="LOCAL-00001" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1692008860369</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00002" summary="Track media server songs list">
|
||||
<option name="closed" value="true" />
|
||||
<created>1694286183476</created>
|
||||
<option name="number" value="00002" />
|
||||
<option name="presentableId" value="LOCAL-00002" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1694286183476</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00003" summary="Move listenbrainz user to env var">
|
||||
<option name="closed" value="true" />
|
||||
<created>1694288928392</created>
|
||||
<option name="number" value="00003" />
|
||||
<option name="presentableId" value="LOCAL-00003" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1694288928392</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00004" summary="Add interface package. Start adding auth stuff for refreshing tokens.">
|
||||
<option name="closed" value="true" />
|
||||
<created>1694543753828</created>
|
||||
<option name="number" value="00004" />
|
||||
<option name="presentableId" value="LOCAL-00004" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1694543753828</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="5" />
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
<option name="version" value="3" />
|
||||
</component>
|
||||
<component name="VcsManagerConfiguration">
|
||||
<MESSAGE value="Structure" />
|
||||
<MESSAGE value="Track media server songs list" />
|
||||
<MESSAGE value="Move listenbrainz user to env var" />
|
||||
<MESSAGE value="Add interface package. Start adding auth stuff for refreshing tokens." />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="Add interface package. Start adding auth stuff for refreshing tokens." />
|
||||
</component>
|
||||
<component name="XSLT-Support.FileAssociations.UIState">
|
||||
<expand />
|
||||
<select />
|
||||
</component>
|
||||
</project>
|
||||
+2
-2
@@ -1,9 +1,9 @@
|
||||
FROM ubuntu:20.04
|
||||
FROM ubuntu:22.04
|
||||
|
||||
ENV RUSTUP_HOME=/usr/local/rustup \
|
||||
CARGO_HOME=/usr/local/cargo \
|
||||
PATH=/usr/local/cargo/bin:$PATH
|
||||
|
||||
RUN apt update && DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt install -y gcc gcc-multilib cmake pkg-config libssl-dev curl
|
||||
RUN apt update && DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt install -y gcc gcc-multilib cmake pkg-config libssl-dev curl dpkg-dev
|
||||
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --no-modify-path --profile minimal --default-toolchain nightly
|
||||
RUN cargo install cargo-deb
|
||||
@@ -18,9 +18,27 @@ environment variables:
|
||||
|
||||
For deploying, these can be configured in `/etc/playlistd.toml`.
|
||||
|
||||
### Container build (Ubuntu 20.04)
|
||||
### Container build (Ubuntu 22.04)
|
||||
|
||||
`podman run --rm --network=host -v "$PWD":/mnt -w /mnt -e "DATABASE_URL=postgres://jude@127.0.0.1/playlistd" playlistd cargo deb`
|
||||
Build the image:
|
||||
|
||||
```sh
|
||||
podman build -t playlistd-22 -f Containerfile .
|
||||
```
|
||||
|
||||
Then build the `.deb`. The `sqlx` query macros check queries against a live, migrated database at
|
||||
compile time, so the host's Postgres socket is mounted into the container. With rootless podman, the
|
||||
container's root maps to your host user, so local peer authentication works without a password:
|
||||
|
||||
```sh
|
||||
podman run --rm \
|
||||
-v "$PWD":/mnt -w /mnt \
|
||||
-v /var/run/postgresql:/var/run/postgresql \
|
||||
-e DATABASE_URL='postgres://jude@%2Fvar%2Frun%2Fpostgresql/playlistd' \
|
||||
playlistd-22 cargo deb
|
||||
```
|
||||
|
||||
The package is written to `target/debian/`.
|
||||
|
||||
## How to use
|
||||
|
||||
|
||||
Reference in new issue
Block a user