# Azure, JuliaPro & Pkg.add()

**URL:** <https://discourse.julialang.org/t/azure-juliapro-pkg-add/10205>\
**Category:** Tooling\
**Tags:** juliapro, package-manager\
**Created:** [April 6, 2018, 8:14pm UTC](https://discourse.julialang.org/t/azure-juliapro-pkg-add/10205 "2018-04-06T20:14:25Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![improbable22](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/improbable22/32/5464_2.png) [@improbable22](https://discourse.julialang.org/u/improbable22)\
**Post date:** [April 6, 2018, 8:14pm UTC](https://discourse.julialang.org/t/azure-juliapro-pkg-add/10205/1 "2018-04-06T20:14:25Z")

</div>

I’ve only used Julia on my own laptop until now. To have more power (and access to GPUs) I just got an account on Microsoft Azure, whose Data Science Virtual Machine [includes JuliaPro](https://juliacomputing.com/press/2017/02/08/azure.html).

But I don’t see how to add packages; even `Pkg.update()` gives errors. Perhaps this is not possible?

If so, is there a recommended way to proceed? Should I be trying to figure out [docker containers](https://discourse.julialang.org/t/running-julia-in-a-docker-container-on-azure/8240)?

Error messages:

```julia
julia> Pkg.add("Revise")
ERROR: SystemError (with /data/JuliaPro-0.6.0.1/JuliaPro/pkgs-0.6.0.1/.cache): mkdir: Permission denied
#systemerror#44 at ./error.jl:64 [inlined]
(::Base.#kw##systemerror)(::Array{Any,1}, ::Base.#systemerror, ::Symbol, ::Bool) at ./<missing>:0
mkdir(::String, ::UInt16) at ./file.jl:99
mkcachedir() at ./pkg/cache.jl:25

```

…

```julia
julia> versioninfo()
Julia Version 0.6.0
Commit 9036443 (2017-06-19 13:05 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.9.1 (ORCJIT, haswell)

julia> Pkg.update()
INFO: Updating METADATA...
ERROR: METADATA cannot be updated. Resolve problems manually in /data/JuliaPro-0.6.0.1/JuliaPro/pkgs-0.6.0.1/v0.6/METADATA.
GitError(Code:ERROR, Class:OS, Failed to create temporary file '/data/JuliaPro-0.6.0.1/JuliaPro/pkgs-0.6.0.1/v0.6/METADATA/.git/objects/pack/pack_git2_q4ZB89': Permission denied)
macro expansion at ./libgit2/error.jl:99 [inlined]
#fetch#41(::Base.LibGit2.FetchOptions, ::String, ::Function, ::Base.LibGit2.GitRemote, ::Array{AbstractString,1}) at ./libgit2/remote.jl:226

```

---

<div class="post-metadata">

**Author:** ![Harsha](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/harsha/32/1985_2.png) [@Harsha](https://discourse.julialang.org/u/Harsha)\
**Post date:** [April 9, 2018, 5:44am UTC](https://discourse.julialang.org/t/azure-juliapro-pkg-add/10205/2 "2018-04-09T05:44:19Z")

</div>

> [@improbable22](#):
>
> is there a recommended way to proceed?

You need to start JuliaPro REPL with sudo access on your DSVM; if you’re planning to perform any `Pkg` operations (Add, update & remove) in JuliaPro.

FYI:- The version of JuliaPro on your DSVM seems to be `v0.6.0.1`, due to version conflicts, `Pkg` might get an older version of `Revise`. I recommend upgrading to the latest stable version of JuliaPro i.e `v0.6.2.2`

> [@improbable22](#):
>
> Should I be trying to figure out docker containers?

JuliaPro v0.6.2.2 is available as a docker, more details regarding this can be found [here](https://juliacomputing.com/blog/2017/11/29/juliapro-ami-and-docker-image.html) . You can also use JuliaPro v0.6.2.2 AMI’s, AMI id’s of JuliaPro v0.6.2.2 AMI’s can be found [here](https://juliacomputing.com/products/ami/juliapro-amis.html)

---

<div class="post-metadata">

**Author:** ![improbable22](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/improbable22/32/5464_2.png) [@improbable22](https://discourse.julialang.org/u/improbable22)\
**Post date:** [April 9, 2018, 7:14am UTC](https://discourse.julialang.org/t/azure-juliapro-pkg-add/10205/3 "2018-04-09T07:14:52Z")

</div>

Ah right, thanks! Simply running `sudo julia` helps.

Now I get other errors from `Pkg` like below… perhaps related to what you mention, I will look into installing JuliaPro v0.6.2.2 next.

```julia
julia> Pkg.update()
INFO: Updating METADATA...
INFO: Computing changes...
ERROR: fixed packages introduce conflicting requirements for BinDeps: 
       available versions are 0.0.1, 0.2.0, 0.2.1, 0.2.2, 0.2.3, 0.2.4, 0.2.5, 0.2.6, 0.2.7, 0.2.8, 0.2.9, 0.2.10, 0.2.11, 0.2.12, 0.2.13, 0.2.14, 0.3.0, 0.3.1, 0.3.2, 0.3.3, 0.3.4, 0.3.5, 0.3.6, 0.3.7, 0.3.8, 0.3.9, 0.3.10, 0.3.11, 0.3.12, 0.3.13, 0.3.14, 0.3.15, 0.3.16, 0.3.17, 0.3.18, 0.3.19, 0.3.20, 0.3.21, 0.3.22, 0.3.23, 0.4.0, 0.4.1, 0.4.2, 0.4.3, 0.4.4, 0.4.5, 0.4.7, 0.5.0, 0.6.0, 0.8.0, 0.8.1, 0.8.2, 0.8.3, 0.8.4, 0.8.5, 0.8.6 and 0.8.7
Stacktrace:
 [1] check_requirements(::

```

---

<div class="post-metadata">

**Author:** ![anon67531922](https://avatars.discourse-cdn.com/v4/letter/a/48db29/32.png) [@anon67531922](https://discourse.julialang.org/u/anon67531922)\
**Post date:** [June 23, 2018, 5:45am UTC](https://discourse.julialang.org/t/azure-juliapro-pkg-add/10205/4 "2018-06-23T05:45:19Z")

</div>

I didn’t see the JuliaPro docker image, so we created our own 😅

We successfully deployed Julia as a microservice to both Azure Service Fabric and Kubernetes but went with ASF in the end. We’ll try to create a MWE and open source it at some point when time permits. Feel free to reach out with any questions and I’ll see if my devs can help 😊

---

<div class="post-metadata">

**Author:** ![mbauman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mbauman/32/31082_2.png) [@mbauman](https://discourse.julialang.org/u/mbauman)\
**Post date:** [September 12, 2023, 4:41pm UTC](https://discourse.julialang.org/t/azure-juliapro-pkg-add/10205/5 "2023-09-12T16:41:38Z")

</div>


