Installing Alchemy Phraseanet DAM on Windows 10 using Docker and WSL2



Phraseanet Digital Asset Management

Phraseanet is an Open Source Digital Asset Management solution dedicated to professionals who need a complete system to manage, publish and share their digital media resources (pictures, videos, audio, PDF, Office documents…). It provides all the necessary tools for capturing, indexing, organization and use of the digital resources. It also has an API of a PHP SDK development kit, as well as a catalogue of plugins.

This solution is published by ALCHEMY, a long-standing player in the DAM market.

Read all about it at Alchemy's site here.

I look after the Phraseanet installation at a large organization. It is a cost-effective tool. We rely on Alchemy's support team, but I wanted to get to know the system a little better myself.

So I have decided to install Phraseanet on Windows 10. But Phraseanet runs on Linux. Not to worry, as Microsoft has introduced Docker support and Windows Subsystem for Linux (WSL) or more recently WSL2. With this I found that we can run Phraseanet on an MS-Windows computer.

Phraseanet 4.1 has introduced support for Docker which is supposed to make things easier to manage.

These are the steps I took to get it working:
  1. install Git for Windows https://gitforwindows.org/ We need this to get the software from Github.
  2. install Visual studio code https://code.visualstudio.com/Download 
  3. download Docker Desktop https://www.docker.com/products/docker-desktop
  4. download WSL2. Follow a tutorial, perhaps https://evidencen.com/wsl2/
  5. following vaguely these instructions: https://www.phraseanet.com/en/download/ ...
  • login to Windows
  • run powershell
    • mkdir phraseanet
    • cd phraseanet 
    • git clone https://github.com/alchemy-fr/phraseanet
      • or maybe it was docker-compose pull that worked.
    • cd Phraseanet
    • $env:PHRASEANET_DOCKER_REGISTRY="alchemyfr"
  • in Visual studio code, open .env/docker-compose.db.yml
  • change 
    • line 6 so that semicolon is the seperator, not colon:

    #COMPOSE_FILE=docker-compose.yml:docker-compose.db.yml:docker-compose.rabbitmq.yml:docker-compose.mailhog.yml

    COMPOSE_FILE=docker-compose.yml;docker-compose.db.yml;docker-compose.rabbitmq.yml;docker-compose.mailhog.yml

      • line 10
    PHRASEANET_DOCKER_REGISTRY=alchemyfr #was local

      • line 92 correct spelling of PROJECT: 

    ENV_SET_PHRASEANET_PROJECT_NAME=1 #was ENV_SET_PHRASEANET_PROJET_NAME=1

      • line 100, 101
    PHRASEANET_ADMIN_ACCOUNT_EMAIL=your.email@xyz.com #was admin@alchemy.f
    PHRASEANET_ADMIN_ACCOUNT_PASSWORD=yourSecretPassword

    • You could also make other changes you feel are necessary. I think this file drives at least partly the automatic set up process which writes out the file configuration/configuration.yml
    • docker-compose up -d
    • check in Docker desktop that all is well, if not, debug and repeat...

    • If Docker desktop looks like the above screenshot then browse to you newly running Phraseanet instance at http://localhost:8082
    I had to tweak it quite a bit before I found it works out of the box except for the mods I show above. Your experience may differ. let me know in the comments. I installed the mysql workbench to check the default databases were really there (they were).

    Docker

    I am a beginner at Docker and am finding these pages useful:

    Future

    I want to investigate automatic categorization of my family photos, and embed the metadata derived by Machine Learning back into to the EXIF data of the photos themselves. 

    This way we can use Phraseanet to be independent of Google, Facebook and the rest.

    Comments

    Popular posts from this blog

    Trackstat on Logitech Media Server