Schlagwörter: ,

Ansicht von 3 Antwort-Themen
  • Autor
    Beiträge
    • #10915
      Dmitry Popov
      Teilnehmer

      Hello everyone. I have a specialized module that I transfer from OTRS. The module is correctly installed on OTOBO, but it requires specialized Perl libraries, such as:AnyEvent, IO::Interactive module, Math::Random::Secure module, Crypt::PasswdMD5. Unfortunately, my knowledge of docker is initial, but I was able to load the shell from there, but I can’t install anything, because I don’t have a root inside the conrainer. Judging by my observations, there are root and otobo users inside the container, I am logged in under otobo, which does not have root rights. sudo is not installed in this image. Who can tell me how to install the perl libraries inside the image?

    • #10916
      bes
      Teilnehmer

      Hi Dmitry,

      adding new Perl modules to  a container would essentially mean to create a new Docker image. This is feasible, but the recommendation is  to go an easier route. Modules can be installed within _/opt/otobo_, which is a volume that lives outside the Docker container. CPAN modules can be installed as the user otobo.

      On the Docker host you can log in as otobo with the command:

      docker exec -it otobo_web_1 bash

      The environment variable PERL5LIB is preset there.

      bes:~/devel/OTOBO/otobo (rel-10_0)$ docker exec -it otobo_web_1 bash
      otobo@a1a51661d02f:~$ echo $PERL5LIB

      /opt/otobo_install/local/lib/perl5:/opt/otobo/local/lib/perl5

      otobo@a1a51661d02f:~$ ls -l local
      ls: cannot access 'local': No such file or directory

       

      The location  _/opt/otobo_install/local/lib/perl5_ is used for the CPAN modules that are delivered with the image. _/opt/otobo/local/lib/perl5_ does initially not exist, but is intended for locally added modules.

      Install module from CPAN, or maybe from a local Pinto repository, with using local::lib.

      otobo@a1a51661d02f:~$ cpanm -l local Acme::123
      --> Working on Acme::123
      Fetching http://www.cpan.org/authors/id/N/NA/NATHANM/Acme-123-0.04.zip ... OK
      Configuring Acme-123-0.04 ... OK
      Building and testing Acme-123-0.04 ... OK
      Successfully installed Acme-123-0.04
      1 distribution installed
      otobo@a1a51661d02f:~$ perldoc -l Acme::123
      /opt/otobo/local/lib/perl5/Acme/123.pm

      Please tell us whether this worked for you, as I haven’t really used this feature myself.This info should also be included in the documentation. I have created the issue https://github.com/RotherOSS/doc-otobo-dev/issues/5 for that.

      Best regards,

      Bernhard

    • #10947
      Dmitry Popov
      Teilnehmer

      I’ve tried various methods, including this one https://doc.otobo.org/manual/installation/stable/en/content/installing-perl-modules.html , starting with the words “ Special care must be taken when OTOBO runs within Docker…“. This method helped partially, not all modules can be installed. I gave up on the idea of using docker, it is good for me for tests, in production, with a lot of integrations, it adds unsolvable difficulties. Thank you

    • #10953
      bes
      Teilnehmer

      Hi Dmitry,

      do you have an example of a module that can’t be installed? Out of curiosity I tried to install the modules mentioned in the initial post, and it seem to work seamlessly.

      otobo@40d571709ab9:~$ cpanm -l local Crypt::PasswdMD5
      --> Working on Crypt::PasswdMD5
      Fetching http://www.cpan.org/authors/id/R/RS/RSAVAGE/Crypt-PasswdMD5-1.41.tgz ... OK
      Configuring Crypt-PasswdMD5-1.41 ... OK
      Building and testing Crypt-PasswdMD5-1.41 ... OK
      Successfully installed Crypt-PasswdMD5-1.41
      1 distribution installed
      otobo@40d571709ab9:~$ perldoc -l Crypt::PasswdMD5
      /opt/otobo/local/lib/perl5/Crypt/PasswdMD5.pm

      Best regards,

      Bernhard

Ansicht von 3 Antwort-Themen
  • Du musst angemeldet sein, um auf dieses Thema antworten zu können.