{"id":18365242,"url":"https://github.com/openlink/vos-reference-docker","last_synced_at":"2025-04-10T13:18:08.360Z","repository":{"id":238759848,"uuid":"730664515","full_name":"openlink/vos-reference-docker","owner":"openlink","description":" Virtuoso Open-Source Edition Reference Docker","archived":false,"fork":false,"pushed_at":"2025-01-01T16:23:44.000Z","size":24,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":5,"default_branch":"develop","last_synced_at":"2025-02-15T19:51:14.949Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openlink.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-12-12T12:13:34.000Z","updated_at":"2025-01-01T16:23:24.000Z","dependencies_parsed_at":"2024-05-08T00:30:29.159Z","dependency_job_id":"a840b0af-d432-471c-a892-d00e6b2d5129","html_url":"https://github.com/openlink/vos-reference-docker","commit_stats":null,"previous_names":["openlink/vos-reference-docker"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openlink%2Fvos-reference-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openlink%2Fvos-reference-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openlink%2Fvos-reference-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openlink%2Fvos-reference-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openlink","download_url":"https://codeload.github.com/openlink/vos-reference-docker/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248225657,"owners_count":21068078,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-05T23:12:57.696Z","updated_at":"2025-04-10T13:18:08.300Z","avatar_url":"https://github.com/openlink.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Building a Virtuoso Open-Source Edition Reference Docker\n\n_Copyright (C) 2025 OpenLink Software \u003cvos.admin@openlinksw.com\u003e_\n\n\u003c!-- START doctoc generated TOC please keep comment here to allow auto update --\u003e\n\u003c!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --\u003e\n**Table of Contents**\n\n- [Introduction](#introduction)\n- [Downloading and building the docker image](#downloading-and-building-the-docker-image)\n- [Configuring the build](#configuring-the-build)\n- [How does Openlink build the official images it distributes?](#how-does-openlink-build-the-official-images-it-distributes)\n- [See Also](#see-also)\n\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n## Introduction\n\nThis Git tree exemplifies how to build a reference implementation\nof the Virtuoso Open-Source (VOS) docker image for a single\narchitecture.\n\nThis image is functionally equivalent to the version we distribute\nvia\n[the official OpenLink repository on Docker Hub](https://hub.docker.com/repository/docker/openlink/virtuoso-opensource-7/general).\n\nIt has been tested on both Ubuntu 18.04 (x86_64) and macOS Big Sur\n11.6 (x86_64 and Apple Silicon).\n\nMost modern Linux distributions provide docker packages as part of\ntheir repository.\n\nFor Apple macOS and Microsoft Windows Docker installers can be\ndownloaded from the [Docker website](https://docker.com/products).\n\n**Note**: Installing software like git, Docker and Docker Compose\nis left as an exercise for the reader.\n\n\n## Downloading and building the docker image\n\n1. Clone the git tree to your own system using the following command:\n\n```\n$ git clone https://github.com/openlink/vos-reference-docker\n```\n\n2. Build the docker image using the following command:\n\n```\n$ ./build.sh\n\n======================================================================\n  BUILD STARTED: Wed Jan  1 10:26:08 AM UTC 2025\n======================================================================\n\n * Building docker image\n   (this may take around 20-30 minutes on current hardware)\n\n======================================================================\n  BUILD FINISHED: Wed Jan  1 10:42:54 AM UTC 2025\n======================================================================\n```\n\n3. Check the version number of this docker image:\n\n```\n$ docker run -i -t vos-reference version\n\n[vos-reference/v7.2.14]\n\nThis Docker image is using the following version of Virtuoso:\n\nVirtuoso Open Source Edition (Column Store) (multi threaded)\nVersion 7.2.14.3240-pthreads as of Jan  1 2025 (ffed467)\nCompiled for Linux (x86_64-pc-linux-gnu)\nCopyright (C) 1998-2024 OpenLink Software\n\n```\n\n## Configuring the build\n\nThe `build.sh` script uses a handful of environment variables to\ncontrol the build.\n\nThe following setting in the script is used to checkout the exact\nstate of the VOS tree to use:\n\n```\n#\n#  Build using a specific git tag, branch or commit id\n#\nexport GIT_TAG=v7.2.14\n#export GIT_TAG=develop/7\n#export GIT_TAG=a1f22974f8fb8fc485e93c425c6bf727725016f3\n```\n\nThe following setting is used to tag the image you build:\n\n```\nexport DOCKER_TAG=vos-reference\n```\n\n## How does Openlink build the official images it distributes?\n\nThe difference between this reference image and the official images\nthat OpenLink publishes is that the official images are built with\n[Docker multi-arch support](https://docs.docker.com/desktop/multi-arch/)\nto run natively on ARM64-based systems (macOS on Apple Silicon,\ncloud-based ARM instances, Raspberry Pi, etc.) as well as Intel/AMD\n64bit-based systems that support the use of docker containers.\n\nAdditionally, OpenLink supplies VOS images based on either Ubuntu\nor Alpine, making a total of 4 internal builds.\n\nBuilding the official images using the method described in this\nreference image would require half of these builds to be run via\nan emulator which of course would be very slow.\n\nWhile a native build takes around 20-30 minutes to complete for the\nnative CPU, performing the same build for the other CPU type using\nan emulator takes about 4-5 hours.\n\nThe total build time for both distributions and architectures would\nbe around 10 hours.\n\nOpenLink already builds and tests Virtuoso Open Source on a number\nof platforms to ensure our software works using different versions\nof operating systems, development tools and libraries.\n\nThis is the equivalent of the \"vos-build\" steps in this reference\n`Dockerfile`.\n\nThese builds are performed in parallel on separate native platforms\nand a tarball with the binary installation is stored on an internal\nserver.\n\nOur docker build process then downloads the relevant 4 builds to\none location, extracts them and uses the `COPY` command exactly\nlike the second part of this Dockerfile.\n\n\n## See Also\n  * [License](LICENSE.md)\n  * [Copying](COPYING.md)\n  * [OpenLink repository on Docker Hub](https://hub.docker.com/repository/docker/openlink/virtuoso-opensource-7/general)\n  * [Virtuoso Docker Reference Guide](https://community.openlinksw.com/t/virtuoso-enterprise-edition-reference-guide-for-docker-deployment/286)\n  * [How to Bulkload data into a Virtuoso docker instance](https://community.openlinksw.com/t/how-to-bulk-load-data-into-a-virtuoso-docker-instance/3248)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenlink%2Fvos-reference-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenlink%2Fvos-reference-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenlink%2Fvos-reference-docker/lists"}