Compare commits

...

21 Commits
v4.20 ... v4.23

Author SHA1 Message Date
Kroese
7f7272b7c8 feat: Update to DSM 7.2.1
feat: Update to DSM 7.2.1
2023-11-01 01:43:18 +01:00
Kroese
c30248f93e docs: Version 2023-11-01 01:40:34 +01:00
Kroese
cf90c9da1f feat: Update to DSM 7.2.1 (69057) 2023-11-01 01:06:41 +01:00
Kroese
461b5598a9 feat: Passthrough multiple devices
feat: Passthrough multiple devices
2023-10-31 16:58:30 +01:00
Kroese
47ed2e8bac build: Changelog 2023-10-31 16:57:43 +01:00
Kroese
1c78e3c8b1 feat: Passthrough multiple devices 2023-10-31 16:53:44 +01:00
Kroese
9f17dfa949 Update Dockerhub description
Update Dockerhub description
2023-10-26 00:56:46 +02:00
Kroese
3de29b6c00 Update Dockerhub description 2023-10-26 00:56:02 +02:00
Kroese
037d52957a build: Push to mirror
build: Push to mirror
2023-10-19 16:03:16 +02:00
Kroese
c7ccc912b5 build: Push to mirror 2023-10-19 16:02:56 +02:00
Kroese
72cbf87986 docs: Update location
docs: Update location
2023-10-19 15:37:33 +02:00
Kroese
317024d327 fix: Update location 2023-10-19 15:33:12 +02:00
Kroese
121c487383 fix: Update location 2023-10-19 15:31:58 +02:00
Kroese
fd92b60218 docs: Update location 2023-10-19 15:31:23 +02:00
Kroese
771429c5d3 build: Push to mirror 2023-10-19 15:27:23 +02:00
Kroese
674b6e5bda build: Update mirror 2023-10-19 15:23:20 +02:00
Kroese
7c65e2740f docs: Update location
docs: Update location
2023-10-19 15:11:45 +02:00
Kroese
d462c6d7a2 fix: Update location 2023-10-19 15:09:37 +02:00
Kroese
d5637e8da0 fix: Update location 2023-10-19 15:08:40 +02:00
Kroese
1b75bd3c44 docs: Update location 2023-10-19 15:05:20 +02:00
Kroese
2551413040 docs: Update location 2023-10-19 15:03:10 +02:00
9 changed files with 51 additions and 46 deletions

View File

@@ -44,6 +44,8 @@ jobs:
TAGS=()
TAGS=("${{ github.repository }}:latest")
TAGS+=("${{ github.repository }}:${VERSION}")
#TAGS+=("${{ secrets.DOCKERHUB_MIRROR }}:latest")
#TAGS+=("${{ secrets.DOCKERHUB_MIRROR }}:${VERSION}")
TAGS+=("ghcr.io/${{ github.repository }}:latest")
TAGS+=("ghcr.io/${{ github.repository }}:${VERSION}")
@@ -86,25 +88,6 @@ jobs:
name: Clear Docker credentials
run: |
rm -f ${HOME}/.docker/config.json
-
name: Get previous tag
id: previousTag
run: |
name=$(git --no-pager tag --sort=creatordate --merged ${{ github.ref_name }} | tail -1)
echo "previousTag: $name"
echo "previousTag=$name" >> $GITHUB_ENV
-
name: Generate changelog
id: changelog
uses: requarks/changelog-action@v1
with:
token: ${{ github.token }}
fromTag: ${{ github.ref_name }}
toTag: ${{ env.previousTag }}
writeToFile: false
reverseOrder: true
includeInvalidCommits: true
excludeTypes: "docs,build,chore"
-
name: Create a release
uses: action-pack/github-release@v2
@@ -113,10 +96,6 @@ jobs:
with:
tag: "v${{ steps.prepare.outputs.version }}"
title: "v${{ steps.prepare.outputs.version }}"
body: |
${{ steps.changelog.outputs.changes }}
**Full Changelog**: https://github.com/${{ github.repository }}/compare//${{ env.previousTag }}...v${{ steps.prepare.outputs.version }}
-
name: Increment version variable
uses: action-pack/bump@v2

View File

@@ -19,6 +19,6 @@ jobs:
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
repository: ${{ github.repository }}
repository: ${{ secrets.DOCKERHUB_REPO }}
short-description: ${{ github.event.repository.description }}
readme-filepath: ./readme.md

View File

@@ -62,8 +62,8 @@ LABEL org.opencontainers.image.title="Virtual DSM"
LABEL org.opencontainers.image.created=${DATE_ARG}
LABEL org.opencontainers.image.revision=${BUILD_ARG}
LABEL org.opencontainers.image.version=${VERSION_ARG}
LABEL org.opencontainers.image.source="https://github.com/kroese/virtual-dsm/"
LABEL org.opencontainers.image.url="https://hub.docker.com/r/kroese/virtual-dsm/"
LABEL org.opencontainers.image.source="https://github.com/vdsm/virtual-dsm/"
LABEL org.opencontainers.image.url="https://hub.docker.com/r/vdsm/virtual-dsm/"
LABEL org.opencontainers.image.description="Virtual DSM in a docker container"
HEALTHCHECK --interval=60s --retries=2 CMD /run/check.sh

View File

@@ -1,7 +1,7 @@
#!/usr/bin/env bash
set -u
VERSION="7"
VERSION="8"
HEADER="VirtualDSM Agent"
# Functions
@@ -38,7 +38,7 @@ function downloadUpdate {
# Auto update the agent
URL="https://raw.githubusercontent.com/kroese/virtual-dsm/master/agent/agent.sh"
URL="https://raw.githubusercontent.com/vdsm/virtual-dsm/master/agent/agent.sh"
remote_size=$(curl -sIk -m 4 "${URL}" | grep -i "content-length:" | tr -d " \t" | cut -d ':' -f 2)
remote_size=${remote_size//$'\r'}
@@ -100,6 +100,8 @@ function installPackages {
trap finish SIGINT SIGTERM
ts=$(date +%s%N)
echo ""
echo " Started $HEADER v$VERSION..."
checkNMI

View File

@@ -28,7 +28,7 @@ start() {
if [ ! -f "$SCRIPT" ]; then
URL="https://raw.githubusercontent.com/kroese/virtual-dsm/master/agent/agent.sh"
URL="https://raw.githubusercontent.com/vdsm/virtual-dsm/master/agent/agent.sh"
if ! curl -sfk -m 10 -o "${SCRIPT}" "${URL}"; then
error 'Failed to download agent script.' > /dev/ttyS0

View File

@@ -2,7 +2,7 @@ version: "3"
services:
dsm:
container_name: dsm
image: kroese/virtual-dsm:latest
image: vdsm/virtual-dsm:latest
environment:
CPU_CORES: "1"
DISK_SIZE: "16G"

View File

@@ -1,6 +1,6 @@
<h1 align="center">Virtual DSM for Docker<br />
<div align="center">
<img src="https://github.com/kroese/virtual-dsm/raw/master/.github/screen.jpg" title="Screenshot" style="max-width:100%;" width="432" />
<img src="https://github.com/vdsm/virtual-dsm/raw/master/.github/screen.jpg" title="Screenshot" style="max-width:100%;" width="432" />
</div>
<div align="center">
@@ -29,7 +29,7 @@ version: "3"
services:
dsm:
container_name: dsm
image: kroese/virtual-dsm:latest
image: vdsm/virtual-dsm:latest
environment:
DISK_SIZE: "16G"
devices:
@@ -48,7 +48,7 @@ services:
Via `docker run`
```bash
docker run -it --rm -p 5000:5000 --device=/dev/kvm --cap-add NET_ADMIN --stop-timeout 60 kroese/virtual-dsm:latest
docker run -it --rm -p 5000:5000 --device=/dev/kvm --cap-add NET_ADMIN --stop-timeout 60 vdsm/virtual-dsm:latest
```
## FAQ
@@ -62,7 +62,7 @@ docker run -it --rm -p 5000:5000 --device=/dev/kvm --cap-add NET_ADMIN --stop-ti
DISK_SIZE: "256G"
```
This can also be used to resize the existing disk to a larger capacity without data loss.
This can also be used to resize the existing disk to a larger capacity without any data loss.
* ### How do I change the location of the virtual disk?
@@ -162,18 +162,18 @@ docker run -it --rm -p 5000:5000 --device=/dev/kvm --cap-add NET_ADMIN --stop-ti
* ### How do I install a specific version of vDSM?
By default, version 7.2 will be installed, but if you prefer an older version, you can add its URL to your compose file as follows:
By default, version 7.2.1 will be installed, but if you prefer an older version, you can add its download URL to your compose file as follows:
```yaml
environment:
URL: "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_VirtualDSM_42218.pat"
```
With this method, you are able to switch between different versions while keeping your file data.
With this method, it is even possible to switch between different versions while keeping all your file data intact.
* ### How do I passthrough my GPU?
To passthrough your GPU, add the following lines to your compose file:
To passthrough your Intel GPU, add the following lines to your compose file:
```yaml
environment:
@@ -182,11 +182,11 @@ docker run -it --rm -p 5000:5000 --device=/dev/kvm --cap-add NET_ADMIN --stop-ti
- /dev/dri
```
This can be used to enable facial recognition in Synology Photos for example.
This can be used to enable the facial recognition function in Synology Photos for example.
* ### What are the differences compared to the standard DSM?
There are only two minor differences: the Virtual Machine Manager package is not provided, and Surveillance Station doesn't include any free licenses.
There are only two minor differences: the Virtual Machine Manager package is not available, and Surveillance Station will not include any free licenses.
* ### Is this project legal?
@@ -198,11 +198,11 @@ docker run -it --rm -p 5000:5000 --device=/dev/kvm --cap-add NET_ADMIN --stop-ti
Only run this container on Synology hardware, any other use is not permitted by their EULA. The product names, logos, brands, and other trademarks referred to within this project are the property of their respective trademark holders. This project is not affiliated, sponsored, or endorsed by Synology, Inc.
[build_url]: https://github.com/kroese/virtual-dsm/
[hub_url]: https://hub.docker.com/r/kroese/virtual-dsm
[tag_url]: https://hub.docker.com/r/kroese/virtual-dsm/tags
[build_url]: https://github.com/vdsm/virtual-dsm/
[hub_url]: https://hub.docker.com/r/vdsm/virtual-dsm
[tag_url]: https://hub.docker.com/r/vdsm/virtual-dsm/tags
[Build]: https://github.com/kroese/virtual-dsm/actions/workflows/build.yml/badge.svg
[Size]: https://img.shields.io/docker/image-size/kroese/virtual-dsm/latest?color=066da5&label=size
[Build]: https://github.com/vdsm/virtual-dsm/actions/workflows/build.yml/badge.svg
[Size]: https://img.shields.io/docker/image-size/vdsm/virtual-dsm/latest?color=066da5&label=size
[Pulls]: https://img.shields.io/docker/pulls/kroese/virtual-dsm.svg?style=flat&label=pulls&logo=docker
[Version]: https://img.shields.io/docker/v/kroese/virtual-dsm/latest?arch=amd64&sort=semver&color=066da5
[Version]: https://img.shields.io/docker/v/vdsm/virtual-dsm/latest?arch=amd64&sort=semver&color=066da5

View File

@@ -178,6 +178,8 @@ else
fi
: ${DEVICE:=''} # Docker variable to passthrough a block device, like /dev/vdc1.
: ${DEVICE2:=''}
: ${DEVICE3:=''}
if [ -n "${DEVICE}" ]; then
@@ -189,3 +191,25 @@ if [ -n "${DEVICE}" ]; then
-device scsi-hd,bus=hw-userdata4.0,channel=0,scsi-id=0,lun=0,drive=drive-userdata4,id=userdata4,rotation_rate=${DISK_ROTATION},bootindex=6"
fi
if [ -n "${DEVICE2}" ]; then
[ ! -b "${DEVICE2}" ] && error "Device ${DEVICE2} cannot be found! Please add it to the 'devices' section of your compose file." && exit 56
DISK_OPTS="${DISK_OPTS} \
-device virtio-scsi-pci,id=hw-userdata5,bus=pcie.0,addr=0x5 \
-drive file=${DEVICE2},if=none,id=drive-userdata5,format=raw,cache=${DISK_CACHE},aio=${DISK_IO},discard=${DISK_DISCARD},detect-zeroes=on \
-device scsi-hd,bus=hw-userdata5.0,channel=0,scsi-id=0,lun=0,drive=drive-userdata5,id=userdata5,rotation_rate=${DISK_ROTATION},bootindex=7"
fi
if [ -n "${DEVICE3}" ]; then
[ ! -b "${DEVICE3}" ] && error "Device ${DEVICE3} cannot be found! Please add it to the 'devices' section of your compose file." && exit 57
DISK_OPTS="${DISK_OPTS} \
-device virtio-scsi-pci,id=hw-userdata6,bus=pcie.0,addr=0x6 \
-drive file=${DEVICE3},if=none,id=drive-userdata6,format=raw,cache=${DISK_CACHE},aio=${DISK_IO},discard=${DISK_DISCARD},detect-zeroes=on \
-device scsi-hd,bus=hw-userdata6.0,channel=0,scsi-id=0,lun=0,drive=drive-userdata6,id=userdata6,rotation_rate=${DISK_ROTATION},bootindex=8"
fi

View File

@@ -10,7 +10,7 @@ DL="https://global.synologydownload.com/download/DSM"
if [ -z "$URL" ]; then
if [ "$ARCH" == "amd64" ]; then
URL="$DL/release/7.2/64570-1/DSM_VirtualDSM_64570.pat"
URL="$DL/release/7.2.1/69057-1/DSM_VirtualDSM_69057.pat"
else
URL="$DL/release/7.0.1/42218/DSM_VirtualDSM_42218.pat"
fi