Commit Graph

59 Commits

Author SHA1 Message Date
ShahanaFarooqui
ad37328600 docker: git reset to avoid modded suffix
Changelog-Fixed: Core lightning's version will not be suffixed with -modded anymore.
2024-09-05 12:31:49 -07:00
ShahanaFarooqui
6c25d2095c docker: Cleaned up Dockerfile's Core Lightning installation
With PR #7618, Core Lightning installation with relative paths has been fixed and can be used again.

Changelog-None.
2024-08-28 17:31:40 -07:00
ShahanaFarooqui
dadf9a78e2 docker: Fix for cryptography v42 upgrade
- **Poetry Issue:** The Docker build for `linux/arm/v7` failed in recent RC releases on the Poetry installation step in the `builder-python` stage. This issue occurred because the `builder-python` stage builds on target's arch but poetry was unable to install on arm/v7 without rust >= v1.56.1.
    - **Solution:** Instead of installing poetry on the `builder-python` stage, we leveraged the existing multi-arch `builder` stage, which already had Poetry. Now, we export the dependencies from `pyproject.toml` to `requirements.txt` within the `builder` stage and then copy `requirements.txt` to the `builder-python` stage for pip installation.

- **Cryptography installation Issue:** python installations for `pyln-proto` started failing due to Cryptography upgrade from v41 to v42 (#7475). It is because now Cryptography needs cargo/rust also.
    - **Solution:** Installing cargo in `builder-python` stage also.

- **Configure Prefix Issue:** Previously, we used `RUN ./configure --prefix=/tmp/lightning_install --enable-static` in the `builder` image and then copied `/tmp/lightning_install` from the `builder` stage to `/usr/local` in the `final` stage. However, this approach is now causing errors due to missing binaries/plugins at their default locations.
    - **Solution:** We are now configuring the installation to use the default location (`/usr/local`). To prevent the local image size from increasing by up to 87MB, instead of copying the entire `/usr/local/` directory, we are explicitly copying only the core lightning binaries.

Changelog-Fixed: Fixes failing Docker build for `arm32` arch.
2024-08-20 21:25:07 -07:00
ShahanaFarooqui
4b69c57d75 plugins: Remove requirements.txt for python plugins
Removing requirements.txt from clnrest and wss-proxy plugins due to their ever changing dependencies. We will only be dependent on pyproject.toml for more stable results.

Reference: https://github.com/ElementsProject/lightning/pull/7416#issuecomment-2181492069

Changelog-None.
2024-07-03 12:20:05 -07:00
ShahanaFarooqui
7783658489 ci: Unify bitcoin versions for whole project
- Updated all Bitcoin version 27.1
- Updated all Elements versions 23.2.1

Changelog-Changed: Updated Bitcoin to v27.1 and Elements to v23.2.1
2024-07-02 11:41:36 +09:30
ShahanaFarooqui
a064b1a4a8 docker: poetry install before make
Issue: Docker images for v24.05 were built on clean lightning directory and the published image should be running on v24.05 but it is running as v24.05-modded.

Root cause: Dockerfile builder was running different versions of grpcio-tools and protobuf. It resulted in auto generated update of contrib/pyln-grpc-proto/pyln/grpc/node_pb2.py and contrib/pyln-grpc-proto/pyln/grpc/primitive_pb2.py files.

Solution: Run `poetry install` before make in the dockerfile's builder stage to ensure that the grpcio-tools and protobuf versions are the same.

References:
https://github.com/ElementsProject/lightning/issues/7370#issuecomment-2152952820
https://github.com/ElementsProject/lightning/pull/7376#issuecomment-2161102381

Changelog-None.
2024-06-13 11:43:37 +09:30
nicolas.dorier
369c0c1391 Update Dockerfile and build-release.sh to PR7214 2024-05-23 10:30:15 -05:00
nicolas.dorier
738ddc66cc Use cross compile in dockerfile, fix arm32 support 2024-05-23 10:30:15 -05:00
ShahanaFarooqui
4c370022d0 script: Updated sql-schema_gen and documented it's jq dependency. 2024-03-19 14:58:59 +10:30
Rusty Russell
3d3bf87b34 build: remove all trace of DEVELOPER.
If you previously configured with `--enable-developer` we turn that into `--enable-debugbuild`.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Removed: build: `--enable-developer` arg to configure (and DEVELOPER variables): use `./configure --enable-debugbuild` and `developer` setting at runtime.
2023-09-21 20:08:24 +09:30
ShahanaFarooqui
ca96cffde8 script: Fixed bitcoin and litecoin archs used with buildx 2023-09-20 14:08:34 +09:30
Chase Sillevis
9c95761740 docker: make available bitcoind binary 2023-09-19 14:34:25 +02:00
Mariusz Kogen
a0c86b77c7 Remove deprecated GMP dependency 2023-09-19 10:26:36 +09:30
ShahanaFarooqui
15b0d4039d docker: Install tini in final stage 2023-09-12 13:20:34 +09:30
ShahanaFarooqui
33ab1ce78b docker: Install clnrest dependencies from rquirements.txt
Changelog-None
2023-08-06 12:34:19 +09:30
Shahana Farooqui
59a0ed41ff docker: Dockerfile amd64 with pyln and clnrest 2023-08-01 11:35:19 +09:30
Shahana Farooqui
94205c094f plugins/clnrest: Update clnrest dependencies in scripts and Dockerfiles
Adding python3-json5 python3-flask python3-gunicorn flask_restx pyln-client
Also run `pip3 install -r plugins/clnrest/requirements.txt`
2023-07-25 19:20:16 +09:30
Shahana Farooqui
e752840849 docker: Core lightning Dockerfile updates
- Updated Dockerfile for amd64
- Removed linuxarm32v7.Dockerfile
- Removed linuxarm64v8.Dockerfile
- Added Dockerfile.arm32v7 for grpc enabled image
- Added Dockerfile.arm64v8 for grpc enabled image
2023-07-10 13:24:51 +09:30
Jon Griffiths
8b4136bad5 build: remove gmp
Core and secp have not used gmp for a very long time now (core disabled
it in 2015).

Signed-off-by: Jon Griffiths <jon_p_griffiths@yahoo.com>
2023-05-24 18:21:43 +09:30
Braydon
9482e0619c docker: Install protobuf-compiler for builder 2023-01-26 15:22:45 +00:00
arowser
90956fa947 change zlib download path 2023-01-05 14:42:00 +01:00
nicolas.dorier
a96ff3b097 Update the contrib arm32v7 and arm64v8 dockerfiles 2022-12-06 10:48:57 +01:00
Christian Decker
d2dae46de9 docker: Fix the dockerfile
Turns out that we were once again mixing non-venv and venv python, so
let's go full venv.

Changelog-None
2022-11-18 15:10:32 +01:00
Chris Guida
7c7c4c4cb3 zlib 1.2.12 yanked, update to 1.2.13 in Dockerfile 2022-10-20 13:27:38 +02:00
José A.P
0153621b32 Fixes #5276 by using as docker base image debian bullseye instead of buster
Changelog-Fixed: Upgrade docker base image from Debian buster to bullseye to work with glibc 2.29+ #5276
2022-05-22 14:25:05 +02:00
Christian Decker
4cd6210c19 docker: Add rust build support to Dockerfile
We weren't building the Rust plugins in the `Dockerfile` since we were
missing the dependencies. Now we do.

Changelog-Fixed: docker: The docker images are now built with the rust plugins `cln-grpc`
2022-05-18 15:24:16 +02:00
Christian Decker
9039c9c46e docker: Update name from c-lightning to Core-Lightning 2022-05-14 11:43:46 +09:30
Rusty Russell
836c1b805b doc: update c-lightning to Core Lightning almost everywhere.
Mostly comments and docs: some places are actually paths, which
I have avoided changing.  We may migrate them slowly, particularly
when they're user-visible.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2022-04-07 06:53:26 +09:30
kiwiidb
8ed6b7050b build: bump zlib dependency 2022-04-06 08:06:50 +09:30
Christian Decker
704162f24a docker: Build the docker image with psql support
Changelog-Fixed: docker: The docker image is now built with postgresql support
2022-03-16 11:25:41 +10:30
Christian Decker
0c4cc782df docker: Clean up the dockerfile to use poetry 2022-03-08 05:00:36 +10:30
Christian Decker
81259bbd67 py: Update mrkd 2022-03-08 05:00:36 +10:30
Christian Decker
1ef77504b1 misc: Add build targets for the tarball and debian packages
The tarball needs to materialze all submodules, and git needs to be
removed as a build dependency.
2022-02-22 09:43:56 +10:30
johnongit
52b1f5a8f4 fix dockerfile 2022-01-11 12:00:30 +01:00
JohnOnGit
8898af1ea7 Upgrade bitcoin-cli to 22.0 2021-12-06 14:45:23 +01:00
nicolas.dorier
3105a7a204 Fix dockerfiles 2021-01-26 15:03:35 +01:00
Christian Decker
15842d056d docker: Bump OS version to debian buster
Since we're planning on standardizing on Python 3.6+ [1] I think it is a good
idea to bump our own docker image to a Debian version that fulfills that
requirement as well.

[1] https://github.com/lightningd/plugins/issues/146
2020-09-16 06:27:12 +09:30
joe.miyamoto
0b1f8fdbf0 Take LIGHTNINGD_NETWORK env variable in Dockerfile.
Before this, docker image will never detects that
`lightning-rpc` was created if it is running in regtest
or testnet, because the file will be created under
subfolder for each network name, and entrypoint does not
check "lightning-rpc" file in those folders.
By specifying `LIGHTNINGD_NETWORK` environment var
in dockerfile, we can now check correct path.

Changelog-Added: Docker build now includes `LIGHTNINGD_NETWORK` ENV variable which defaults to "bitcoin". An user can override this (e.g. by `-e` option in `docker run`) to run docker container in regtest or testnet or any valid argument to `--network`.
2020-07-07 12:14:42 +02:00
Christian Decker
324d39bb6b docker: Add python3 to the docker image
Most user-contributed plugins are written in python, and not having it
available in the docker image is rather annoying to work around. So we just
add that tiny dependency to the image.

Fixes #3765
2020-07-06 17:08:45 +02:00
Christian Decker
7f6f324590 python2: Remove python2 dependency from docs and dockerfiles 2020-02-27 09:18:24 +10:30
darosior
051b5bd1bf Update bitcoin-core version
Bitcoin-core v0.18.X is now the more widely used.
2019-12-22 12:42:56 +01:00
nicolas.dorier
0d55dca50f Revert "docker: Use system libraries, don't bring your own"
This reverts commit 48728d3828.
2019-11-14 13:37:04 +01:00
Christian Decker
48728d3828 docker: Use system libraries, don't bring your own
We were compiling them from source, but then not adding them in the final
docker image. This just drops the source based ones in favor of system
provided ones.

Fixes #3074
2019-09-25 22:49:41 +00:00
darosior
e52af0d1ea doc: Document the new dependency 2019-09-10 02:17:27 +00:00
nicolas.dorier
49496ab3ba [Docker] Use stretch-slim instead of Alpine 2019-08-30 16:17:51 +02:00
Cryptcoin Junkey
bdf1ffcb4f Enable to build the docker image (ElementsProject#2941).
Signed-off-by: Cryptcoin Junkey <cryptcoin.junkey@gmail.com>
2019-08-11 18:21:03 +02:00
darosior
97ff855f5a Install python3-mako in the Dockerfile 2019-07-24 16:38:59 +02:00
nicolas.dorier
3e215287cd Use tini as docker entrypoint 2019-03-19 14:26:03 +01:00
wailo
e843e138fe Fix installing plugins in dockerfile (#2451)
* Improved plugin install in docker

- All files generated by 'make install' are copied
- Fixes issues with incomplete installation.
- Example: New executables created by build but are missing in docker.
2019-03-11 09:51:47 +01:00
wailo
2e129dd932 Installing the Pay plugin in Dockerfile 2019-03-01 00:07:56 +00:00